【发布时间】:2017-04-15 11:04:15
【问题描述】:
我试图通过按“p”键来暂停我的游戏,但在它暂停后再次按下 p 时它并没有取消暂停。这是我的代码的相关部分,我想知道如何解决这个问题和/或是否有更好的替代方法来实现游戏暂停。
pause = False
while True:
if not pause:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
#game code
keys = pygame.key.get_pressed()
#if key up
elif keys[pygame.K_p]:
pause = True #appears to work correctly, screen freezes and
#prints "PAUSED" every tick.
#more game code
pygame.display.update()
fpsClock.tick(FPS)
else:
print("PAUSED")
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.KEYDOWN:
if event.type == pygame.K_p:
pause = False
pygame.display.update()
fpsClock.tick(FPS)
【问题讨论】:
-
event.type在检查pygame.K_p时应该是event.key