7
我正在寫一個Python snake game using curses,但我有一些難以控制的蛇,我的電流控制蛇代碼放置在主循環內,並且看起來是這樣的:如何獲得使用curses按下的最後一個箭頭鍵?
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)
然而代碼似乎對待鍵作爲一個按鈕被按下(所以蛇在箭頭按下時會停止),而我實際上想讓它檢索被按下的最後一個箭頭鍵。
如何檢索按下的最後一個箭頭鍵?
重新考慮你的設計('direction'變量將是合適的),而這個問題消失。 – You 2010-09-06 13:30:02
@You:據我瞭解,這不能解決我的問題。 – Zaz 2010-09-06 21:16:28
這完全取決於你如何佈置你的程序。現在看起來,運動取決於輸入 - 更合適的依賴關係是運動僅取決於時間,並對關鍵事件進行輪詢(非阻塞),當發生這種情況時更改變量「方向」。無論如何,我就是這麼看的。 – You 2010-09-06 21:37:38