呪いを使用して押された最後の矢印キーをどのようにしますか?

StackOverflow https://stackoverflow.com/questions/3651709

  •  01-10-2019
  •  | 
  •  

質問

私は書いています 呪いを使用したPython Snakeゲーム, 、しかし、ヘビを制御するのに苦労しているので、ヘビを制御するための私の現在のコードはメインループ内に配置され、次のようになります。

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として扱っているように見えます(したがって、ヘビは矢印が流れてしまうと停止します)が、実際に押された最後の矢印キーを取得してほしい。

押された最後の矢印キーを取得するにはどうすればよいですか?

役に立ちましたか?

解決

??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)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top