根据按下的按钮临时更改python中的变量

时间:2014-03-23 22:21:04

标签: python tkinter

我想要制作的游戏的一部分是,如果你输了,(ball.hit_bottom == True),你的分数会出现一个结束屏幕。我还有按钮将用户返回到主屏幕。但是,由于我的构建方式,ball.hit_bottom仍然是正确的,因此只要单击将播放器返回到主屏幕的按钮,它就会更新,并且ball.hit_bottom中的屏幕会加载。我不明白如何阻止这种情况发生。

我正试图让它按下按钮时,它会运行MenuReturn并返回主页,这样他们就可以重新开始或选择其他游戏。

对不起,如果做得不好,我是新来的。

STARTUPTWO()调出主页。这可以工作,但只有很短的时间才能恢复到最终屏幕。

def MenuReturn():
    startup = tkinter.messagebox.askyesno('Return To Menu','Are you sure?')
    if startup == True:
        STARTUPTWO() 
        y = 0
    else:
        tk.destroy() 

y=1

while y:

    timeforscore+=1 
    if timeforscore ==100:
        timeforscore =1
    tk.update_idletasks()
    tk.update()
    time.sleep(0.01) 

    if ball.hit_bottom == False:
        ball.draw() 
        paddle.draw() 
    if ball.hit_bottom == True:
        canvas.delete(ALL)
        canvas.create_text(350, 160, font=("Bauhaus 93",30), fill = 'Red', text='Unlucky! You lost with a final score of...')
        txtpad1score = canvas.create_text(350, 350, font=("Bauhaus 93",60), fill = 'Red', text='0') 

        btnmenufor = Button(text = "Menu", command = MenuReturn, anchor = W)
        btnmenufor.configure(width = 10, activebackground = "#33B5E5")
        btnmenufor_window =  canvas.create_window(300, 670, anchor=NW, window=btnmenufor)

0 个答案:

没有答案