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。
添加回答
举报