Изображение не отвечает на разные ключи Pygame Python - PullRequest
0 голосов
/ 29 сентября 2018

Добрый день.Я пытаюсь заставить землю двигаться влево и вправо, когда нажаты противоположные клавиши, но по какой-то причине изображение продолжает двигаться вправо.Вот разумная часть моего кода:

, пока не произошел сбой, а не timeOut и не Quit:

for event in pygame.event.get():
    if event.type == pygame.QUIT:
        Quit = True

    if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_LEFT:
            gx_change = 2.5
        elif pygame.key == pygame.K_RIGHT:
            gx_change = -2.5

        if pygame.key == pygame.KEYUP:
            if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
                gx_change = 0

print (event)

gx += gx_change

Как я уже сказал, он просто продолжает работать правильно.

ОБНОВЛЕНИЕ: исправлено

Спасибо !!!

1 Ответ

0 голосов
/ 29 сентября 2018

Проблема в том, что ваш оператор if для KEYUP фактически находится внутри оператора if для KEYDOWN.Это правильный код:

while not crashed and not timeOut and not Quit:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            Quit = True

        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT:
                gx_change = 2.5
            elif pygame.key == pygame.K_RIGHT:
                gx_change = -2.5

        if pygame.key == pygame.KEYUP:
            if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
                gx_change = 0

    print (event)

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