Задать вопрос
piesam
@piesam
Python developer

Как в pygame обработать одновременное нажатие 2-х и более клавиш?

К примеру чтобы при нажатии стрелок вверх и вправо игрок двигался наискосок.
  • Вопрос задан
  • 3444 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@xdgadd
ML/Python/Cpp
Берёте и обрабатываете:
import pygame as pg
...
for e in pg.event.get():
    ...
    if e.type == pg.KEYDOWN:
        if e.key == pg.K_w:
            move_up()
        elif e.key == pg.K_s:
            move_down()
        elif ...
...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@d1skort
junior
Господи, ну камон. Первая ссылка в гугле!

Первый вариант:
keys = pygame.keys.get_pressed()

if keys[pygame.K_RIGHT] and keys[pygame.K_LEFT]:
    move_fullcube = left


Второй вариант:
right_pressed = False
one_pressed = False
for event in pygame.event.get():
    if event.type==KEYDOWN:
        if event.key==K_RIGHT:
            right_pressed = True
        if event.key==K_1:
            right_pressed = True
Ответ написан
Ваш ответ на вопрос

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

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