Задать вопрос
@maximsemin23

Как сделать так чтобы система учитывала только новое нажатие клавиши?

Нужно, чтобы система выполняла действие по нажатию клавиши.
keys = pg.key.get_pressed()

if keys[pg.K_PAGEUP]:
            if yellowNumber == 2 or yellowNumber == 3:
                yellowNumber -= 1

Система делает то, что надо, но при этом так как 60 fps, и каждый кадр keys обновляется, то чтобы элемент сдвинулся только на 1, нужно нажать клавишу на... 1,67 сотых секунды, что физически невозможно. А мне надо сделать так, чтобы система реагировала только на новое нажатие
  • Вопрос задан
  • 74 просмотра
Подписаться 1 Средний 3 комментария
Пригласить эксперта
Ответы на вопрос 2
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
Нажал - поменял состояние переменной "последняя кнопка". Подержал дольше - произошло второе нажатие. Проверяем, если кнопка соответствует содержимому переменной "последняя кнопка" - игнорируем.
Ответ написан
Комментировать
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
Точно не знаю как работает pygame, но предполагаю что при нажатии нужно сразу же блокировать кнопку, а дальше делать вычисления, а в самом конце - разблокировать кнопку.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы