Я преподаю pygame, и я пытаюсь создать программу, которая меняет цвет квадрата после его нажатия. Проблема в том, что если пользователь нажимает на квадрат более чем на 1/60 секунды, квадрат начнет циклический переход между синим и оранжевым, мои два цвета выбора. Вот код, который должен переключить цвет квадрата:Ищет путь вокруг логической ошибки в программе pygame
if event.type == pygame.MOUSEBUTTONUP:
mousePos = pygame.mouse.get_pos()
if 130 < mousePos[0] < 250:
if 90 < mousePos[1] < 210:
if switching:
color = (255,100,0)
else:
color = (0,100,255)
switching = not switching
Я сделал вывод, что это потому, что этот код в цикле игры, и Event.type не имеет его значение изменилось, если пользователь не перемещает мышь. Это означает, что он проходит секцию кода каждый раз, когда он проходит через игровой цикл, что означает, что цвет квадрата изменяется каждые 1/60 секунды с момента, когда пользователь освобождает свою мышь, пока они, наконец, не переместят свой курсор. Любые идеи о том, как обойти это?
Спасибо, только что внедрил его. –