python 3 сброс игры всплывающее окно - PullRequest
1 голос
/ 06 апреля 2020

Простите за полный беспорядок кода, я очень новичок в этом. это базовая c игра, в которой избегают падающих предметов, и проблема, с которой я столкнулся, заключается в том, что я пытаюсь сделать так, что если вы «cra sh», появится всплывающее окно с вопросом, хотите ли вы играть снова с кнопками да или нет.

пока у меня запущено всплывающее окно, и оно закрывается, если не выбрано. если выбрано «да», оно либо ничего не делает, либо использует другой подход, который я выбрал, он просто запускает звук «cra sh» при повторении, а всплывающее окно снова возвращается обратно.

Кто-нибудь знает, что я делаю не так? Кажется, я не могу найти учебник о том, кто делает то, что я хочу






#resetting
def restart():
    player_car.goto(-100,-400)
    left.goto(-300, 600)
    mid.goto(-100, 300)
    right.goto(100, 800)
    main



def crashed():
    end = Tk()
    end.iconbitmap('c:/CODEING/test_img/car_icon.ico')
    end.bg = 'black'
    end.title('Restart')
    end.geometry('250x100')

    question = Label(end, text='Would you like to play again?', font=('bold', 12))
    question.grid(row=0, column=1, columnspan=5)

    yes = Button(end, text='Yes', padx=20, pady=10, font=12, command=restart)
    no = Button(end, text='No', padx=20, pady=10, font=12, command=exit)

    yes.grid(row=3, column=1)
    no.grid(row=3, column=4)

    pad1 = Label(end, padx=10).grid(row=0, column=0)
    pad2 = Label(end).grid(row=2, column=0)

    end.mainloop()



def main():
    global s
    global hs
    #left lane
    left.sety(left.ycor() - left.dy)
    if left.ycor() < -650:
        left.sety(1000)
        winsound.PlaySound('c:/CODEING/Test_sounds/point.wav', winsound.SND_ASYNC)
        s += 10

        if s > hs:
            hs = s
        pen.clear()
        pen.write('''Score= {}
High score ={}'''.format(s, hs), font=('Comic Sans MS',20,'underline'))


    if (left.ycor() <= -300 and left.ycor() >=-480) and (left.xcor() == player_car.xcor()):
        left.dy *= 0
        winsound.PlaySound('c:/CODEING/Test_sounds/car_crash.wav', winsound.SND_ASYNC)
        time.sleep(1)
        crashed()







while True:
    wn.update()
    main()


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...