после открытия окна pygame window ,оно не закрывается. Закрыть можно только через диспетчер задач
import pygame
pygame.init()
width,height=800,600
fps=60
window=pygame.display.set_mode((width,height))
clock=pygame.time.Clock()
py, sy, ay =height//2,0,0
player=pygame.Rect(width//3,py,50,50)
state='start'
timer=60
play=True
while play:
for event in pygame.event.get():
if event.type==pygame.quit:
play=False
press=pygame.mouse.get_pressed()
keys=pygame.key.get_pressed()
click=press[0] or keys[pygame.K_SPACE]
if timer >0:
timer-=1
if state == 'start':
if click and timer==0:
state = 'play'
py += (height// 2 - py) *0.1
player.y=py
elif state == 'play':
if click:
ay = -2
else:
ay = 0
py +=sy
sy=(sy+ay+1)*0.98
player.y=py
if player.top <0 or player.bottom > height:
state = 'fall'
elif state == 'fall':
sy, ay=0,0
state =='start'
else:
pass
window.fill(pygame.Color('black'))
pygame.draw.rect(window,pygame.Color('yellow'),player)
pygame.display.update()
clock.tick(fps)
pygame.quit()
Ответы (1 шт):
Автор решения: wchistow
→ Ссылка
Условие
if event.type==pygame.quit:
нужно заменить на
if event.type==pygame.QUIT:
т. е. написать большими буквами, потому что pygame.quit - функция, и тип события никогда не будет ей равен.