Я только начал создавать игры в python. После различных обучающих программ я создал эту игру из своего собственного опыта. Но когда я запускаю свой код, он просто открывает пустое черное окно, не отображая ни одного персонажа, даже фона. С синтаксисом проблем нет. Я знаю, что что-то не так, но я не могу понять, что это такое. Не могли бы вы помочь мне решить эту проблему?
import pygame
import random
import math
from pygame import mixer
screen = pygame.display.set_mode((800,600))
pygame.init()
mixer.music.load("music1.file.mp3")
mixer.music.play(-1)
background = pygame.image.load("direction.png")
clock = pygame.time.Clock()
carImg = pygame.image.load("car.png")
carX = random.randint(0,800)
carY = random.randint(0,600)
carX_change = 4
carY_change = 40
bulletImg = pygame.image.load("shoot.png")
bulletX = 370
bulletY = 480
bulletX_change = 0
bulletY_change = 0
font = pygame.font.Font("freesansbold.ttf",32)
score_value = 0
over_font = pygame.font.Font("freesansbold.ttf",64)
def show_score():
score = font.render("Score: " + str(score_value) ,True,(255,255,255))
screen.blit(score,(10,10))
def game_over():
over_text = over_font.render("GAME OVER",True,(0,0,0))
screen.blit(over_text,(200,250))
def bullet(x, y):
screen.blit(bulletImg,(x,y))
def car(x,y):
screen.blit(carImg,(x,y))
def collision():
distance = carX-bulletX
if distance <= 30:
return True
else:
return False
running = False
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
bulletY_change = 20
if carY>= 440:
carY = 2000
carX += carX_change
carY += carY_change
if carX <= 0:
carX = 0
elif carX >= 736:
carX = 0
car(carX,carY)
bulletX += bulletX_change
bulletY += bulletY_change
collision()
if collision:
explosionSound = mixer.Sound("music2.file.mp3")
explosionSound.play()
bulletY = 480
if bulletY<= 0:
bulletY = 480
bullet(bulletX, bulletY)
screen.fill((255,255,255))
screen.blit(background(0,0))
show_score()
game_over()
car(carX,carY)
bullet(bulletX, bulletY)
pygame.display.flip()
pygame.display.update()
clock.tick(60)
pygame.quit()
enter code here