Я создаю систему чата и хочу вставить игру, созданную с помощью Pygame. В файле state_machine системы чата я установил состояние клиента как S_GAMING
. Когда клиент вводит «game» в состоянии S_LOGGEDIN
, состояние изменится на S_GAMING
, а когда игра закончится, пользователь может выйти из игры, нажав кнопку «x» или подождав 3 секунды. .
У меня проблемы с закрытием окна игры без выхода из системы чата.
когда я использовал pygame.quit()
, окно замерзнет.
Когда я попробовал pygame.quit()
и sys.exit()
или quit()
, я также вышел из системы чата.
Это часть файла game.py:
run = True
gameOver = False
timer = 0
while run:
clock.tick(27)
#check events
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if not gameOver:
drawWindow()
for each in barriers:
if each.isHit:
gameOver = True
else:
if timer < 81:
win.blit(game_over,(0,0))
timer +=1
pygame.display.update()
else:
run = False
pygame.display.quit()
pygame.quit()
Это часть файла chat_state_machine:
elif self.state == S_GAMING:
import game
self.state = S_LOGGEDIN
Я знаю, что это конкретный вопрос, и я могу предоставить больше кода, если выше не ясно.
Надеюсь, я смогу получить ответ. Я весь в ушах.