Кажется, я не могу добавить изображение из файла вместо отображаемого красного прямоугольника. Это только один класс моего кода. Я просмотрел другие руководства о том, как это сделать, но мне не повезло. Когда я пытался добавить команду image.load, у меня продолжало появляться черное окно, на котором ничего не было. Я бы хотел, чтобы изображение отображалось вместо красного прямоугольника, но с теми же значениями x и y и т. Д.
def __init__(self, x, y):
pygame.sprite.Sprite.__init__(self)
self.x_change = 0
self.y_change = 0
self.jump_duration = 15
self.jumping = False
self.jump_cooldown = 0
self.move_unit = 5
self.jump_cooldown_duration = 0
self.width = 200
self.height = 200
self.image = pygame.Surface([self.width, self.height])
self.image.fill(RED)
self.rect = self.image.get_rect()
self.x = x
self.y = y
self.rect.x = self.x
self.rect.y = self.y
def move(self, movement):
if movement == "":
self.x_change = 0
self.y_change = 0
if movement == "L":
self.x_change =- self.move_unit
if movement == "R":
self.x_change = self.move_unit
if movement == "U" and self.jump_duration >= 0 and self.jump_cooldown == 0:
self.y_change =- (self.move_unit + 1)
self.jump_duration -= 1
self.jumping = True
print("jumping")
if self.jump_duration<0:
self.jump_duration=10
self.jump_cooldown=10
self.jumping=False
def start_jump_cooldown(self):
if self.jumping:
self.jump_cooldown_duration = 60
def update(self, movement):
if movement == "L":
self.x_change=-self.move_unit
if movement == "R":
self.x_change=self.move_unit
if self.jump_duration<0:
self.jump_duration=5
self.jump_cooldown_duration=10
self.jumping=False
if self.jump_cooldown_duration>0:
self.jump_cooldown_duration-=1
self.x += self.x_change
self.y += self.y_change
self.rect.x = self.x
self.rect.y = self.y