1 回答

TA貢獻1803條經驗 獲得超3個贊
您正在檢查您檢查的 if 語句中的 event.type 是否有按鍵
if event.type == pygame.QUIT
意思是,您的程序僅在您嘗試退出程序后檢查按鍵操作。
將所有檢查關鍵操作的 if 語句向左移動一個選項卡,它應該可以工作。
但是,當退出時,您將不得不移動要執行的代碼
if event.type == pygame.QUIT
像這樣:
if event.type==pygame.QUIT:
#if it quits
pygame.quit()
exit(0)
#key_input
elif event.type == pygame.KEYDOWN:
if event.key==K_w:
keys[0]=True
elif event.key==K_a:
keys[1]=True
elif event.key==K_s:
keys[2]=True
elif event.key==K_d:
keys[3]=True
elif event.type == pygame.KEYUP:
if event.key==pygame.K_w:
keys[0]=False
elif event.key==pygame.K_a:
keys[1]=False
elif event.key==pygame.K_s:
keys[2]=False
elif event.key==pygame.K_d:
keys[3]=False
為了提高性能,使用 elif-statements 來檢查 event.type 而不是 if-statements,因為 event.type 不能是 pygame.QUIT、pygame.KEYDOWN 和 pygame.KEYUP。
添加回答
舉報