Следующее для l oop дает мне некоторые неожиданные результаты. Кто-нибудь может определить проблему? - PullRequest
0 голосов
/ 02 апреля 2020

Я делаю одну игру Titactoe с ИИ, но в следующем случае для l oop, конечного случая, в котором любой из них выигрывает или ничья, он не вытягивает этот конечный случай в GraphWin. Кроме того, окно сообщения current_status просто остается на Player 1 Chance все время, даже когда написано setText команды. Я также хочу, чтобы программа приостанавливалась на 3 секунды после отображения сообщения curr_status.setText("Thinking..."), но когда я использую time.sleep(3), player_move также замедляется и сообщение никогда не меняется. Может кто-нибудь, пожалуйста, помогите мне определить проблему здесь?

Вот весь код на случай, если кто-то захочет посмотреть на него

Следующий код находится внутри def main ():

for i in range(1, 10):

    curr_status.setText("Player 1 Chance")
    p1mouse = win.getMouse()
    p1x = p1mouse.getX()
    p1y = p1mouse.getY()
    player_move(entries, win, p1x, p1y)
    if check(entries) is True:
        curr_status.setText("Player 1 wins!")
        break
    elif check(entries) is False:
        curr_status.setText("It's a draw.")
        break

    curr_status.setText("Thinking...")

    time.sleep(3)

    computer_move(entries, win)

    if check(entries) is True:
        curr_status.setText("It's a draw.")
        break
    elif check(entries) is False:
        curr_status.setText("It's a draw.")
        break

    curr_status.setText("Player 1 Chance")

print("Enter 1 to play again, 0 to Exit : ")
x = int(input())
if (x == 1):
    win.close()
    main()
else:
    sys.exit()
...