Ошибка pygame.error: video system not initialized почти сразу после запуска программы
Не очень разбираюсь в PyGame, так что за основу для решения задачи решил взять код от другой. вставил свою картинку, убрал функцию ее разворота, решил сделать стартовую позицию картинки за экраном, чтобы она выезжала при запуске. Именно когда я дописал эту строку, появилась ошибка.
Ошибка:
Traceback (most recent call last):
File "C:\Users\User1\PycharmProjects\Programs\Game over.py", line 52, in <module>
pygame.display.flip()
pygame.error: video system not initialized
Код:
import pygame
import os
import sys
def load_image(name, colorkey=None):
fullname = os.path.join('data', name)
# Если файл не существует, то выходим
if not os.path.isfile(fullname):
print(f"Файл с изображением '{fullname}' не найден")
sys.exit()
image = pygame.image.load(fullname)
return image
class Gameover(pygame.sprite.Sprite):
gamescr = load_image('gameover.png')
image_left = pygame.transform.flip(gamescr, True, False)
def __init__(self):
super().__init__(all_sprites)
self.image = Gameover.gamescr
self.rect = self.image.get_rect()
self.ticks = 0
def update(self):
self.rect.x = -500 # Ошибка возникает только если вписываю эту строку
if self.rect.left + self.rect.width > width \
or self.rect.left < 0:
pygame.quit()
self.ticks = 0
pygame.init()
size = width, height = 600, 300
fps = 50 # Количество кадров в секунду
clock = pygame.time.Clock()
running = True
screen = pygame.display.set_mode(size)
screen.fill(pygame.Color('blue'))
all_sprites = pygame.sprite.Group()
car = Gameover()
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill(pygame.Color('white'))
all_sprites.draw(screen)
all_sprites.update()
pygame.display.flip()
clock.tick(fps)
pygame.quit()