所以我需要为学校练习做一个小游戏。我太懒了,无法在代码中创建所有屏幕,所以我只是对所有屏幕进行了png,然后在代码中称它们为“spelfase”0、1和2。Spelfase 0是显示游戏标题等的开始屏幕。Spelfase 1是显示规则的规则屏幕。Spelfase 2是真正的游戏。 我很确定spelfase 1的代码是问题所在,因为当我输入代码时,当我在startscreen上按下空格键时,我的应用程序没有响应
我真的是一个新的编码,所以我没有尝试过很多东西
spelfase = 0
clock = pygame.time.Clock()
while not done:
if spelfase == 0:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
spelfase = 1
screen.fill((255,255,255))
bordrect = startscherm.get_rect()
screen.blit(startscherm, bordrect)
clock.tick(60)
pygame.display.flip()
while not done:
if spelfase == 1:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
spelfase = 2
screen.fill((255,255,255))
bordrect = regelscherm.get_rect()
screen.blit(regelscherm, bordrect)
clock.tick(60)
pygame.display.flip()
while not done:
if spelfase == 2:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
print ("Knop: Spatie")
worp = random.randint(1,6)
posities[beurt] += worp
if posities[beurt] >= 63:
posities[beurt] = 63
if beurt == 0:
beurt = 1
else:
beurt = 0
elif event.key == pygame.K_BACKSPACE:
print ("Knop: Backspace")
beurt = 0
worp = 0
posities = [0,0]
screen.fill((255,255,255))
bordrect = bord.get_rect()
screen.blit(bord, bordrect)
clock.tick(60)
pygame.display.flip()
你没有离开第一个循环,因为如果你按空格键,你仍然没有“完成”
这是一个快速的解决方案,但是你必须删除那些if语句并清理掉一些东西
相关问题 更多 >
编程相关推荐