我正在尝试发明一种可以在按下P时暂停游戏的功能。 我也希望在游戏运行时将其显示在屏幕上。 但是,我不知道如何继续我的功能。 另外,是否可以在不使用import time情况下执行此操作?
使用我的代码,在开始游戏后, P仅暂停其中一个块,并且不再移动。
def play():
onkey(None,"space")
clear()
hanoi(6, t1, t2, t3)
write("press STOP button to exit",
align="center", font=("Courier", 16, "bold"))
def pause():
onkey(None,"p")
clear()
hanoi(6, t1, t2 ,t3)
write("Press P to Pause",
align="center", font=("Courier", 16, "bold"))
if onkeypress("p"):
Pause = True
def main():
global t1, t2, t3
ht(); penup(); goto(0, -225) # writer turtle
t1 = Tower(-250)
t2 = Tower(0)
t3 = Tower(250)
# make tower of 6 discs
for i in range(6,0,-1):
t1.push(Disc(i))
# prepare spartanic user interface ;-)
write("Aleksandar Stefanov's ToH. Press spacebar to start game",
align="center", font=("Courier", 16, "bold"))
onkey(play, "space")
onkey(pause, "p")
listen()
return "EVENTLOOP"
if __name__=="__main__":
msg = main()
print(msg)
mainloop()