после открытия окна 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 - функция, и тип события никогда не будет ей равен.

→ Ссылка