Пиша Питон змия игра използвайки проклятия, но имам някои неприятности, контролиращи змията, сегашният ми код за контролиране на змията е поставен вътре в основната линия и изглежда така:
while True:
char = screen.getch()
if char == 113: exit() # q
elif char == curses.KEY_RIGHT: snake.update(RIGHT)
elif char == curses.KEY_LEFT: snake.update(LEFT)
elif char == curses.KEY_UP: snake.update(UP)
elif char == curses.KEY_DOWN: snake.update(DOWN)
else snake.update()
time.sleep(0.1)
Кодът обаче изглежда да третира клавишите, натиснати като que (така че змията ще спре, когато изтече стрелките), докато всъщност искам да извлече последния бутон със стрелка, който е натиснат.
Как мога да изтегля последния натиснат клавиш със стрелка?
Отговори:
3 за отговор № 1Комплект screen.nodelay(1)
:
screen.nodelay(1)
while True:
char = screen.getch()
if char == 113: break # q
elif char == curses.KEY_RIGHT: snake.update(RIGHT)
elif char == curses.KEY_LEFT: snake.update(LEFT)
elif char == curses.KEY_UP: snake.update(UP)
elif char == curses.KEY_DOWN: snake.update(DOWN)
else: snake.update()
time.sleep(0.1)