问题描述
有谁知道怎么重启程序,比如,当玩家达到5分时,在文本“Player a Wins”后它会给出一定的时间延迟,然后直接从0 0重新开始游戏。我创建了分数,但是一旦达到 5 分就被困在重新启动程序?
我在开始时已将 turtle
作为游戏导入。
if (scoreboard_a > 4):
win.write("Player A WINS!",font=textfont2)
game.reset()
elif (scoreboard_b > 4):
win.write("Player B WINS!",font=textfont2)
game.reset()
解决方法
您可以像这样重新启动整个程序:
import os
import sys
import time
time.sleep(2)
os.execl(sys.executable,sys.executable,*sys.argv)
或者,您可以重置分数和其他元素,例如:
time.sleep(2)
# reset variables
,
您可以使用 while
循环;将所有你的代码(预计可能不是导入)放入一个 while
循环中:
import turtle
from time import sleep
while True:
# All your game code here
scoreboard_a = 0
scoreboard_b = 0
if (scoreboard_a > 4):
win.write("Player A WINS!",font=textfont2)
elif (scoreboard_b > 4):
win.write("Player B WINS!",font=textfont2)
sleep(2)
如果您的游戏已在 while
循环中,请在游戏结束时使用 break
:
import turtle
from time import sleep
while True:
# All your game code here
scoreboard_a = 0
scoreboard_b = 0
while True:
# All your game code here
if (scoreboard_a > 4):
win.write("Player A WINS!",font=textfont2)
sleep(2)
break
elif (scoreboard_b > 4):
win.write("Player B WINS!",font=textfont2)
sleep(2)
break