PyGame фон у спрайта не убирается

У меня есть проблема. Мой персонаж (спрайт) черного стиля, а при создании окна PyGame он загружается с черным фоном. "set.colorkey" не помогает. Когда я в него прописываю убрать фон (чёрный) , убирается весь персонаж почти. Помогите пожалуйста

Вот ссылка на сайт откуда я качал спрайты : https://rgsdev.itch.io/free-animated-fantasy-character-vector-2d

Вот сам код:

import pygame , os , sys

# Переменные
worldx = 800
worldy= 600
fps = 40 #частота кадров
ani = 4 #циклы анимации
world = pygame.display.set_mode([worldx,worldy])
BLUE = (25,25,200)
BLACK = (23,23,23)
WHITE = (254,254,254)
ALPHA = (0,255,0)

main = True


# Объекты
class Player(pygame.sprite.Sprite):
    #персонаж сам
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)  # тут тоже надо 2 подчеркивания
        self.movex = 0 # перемещение по х
        self.movey = 0 # перемещение по у
        self.frame = 0 #подсчет кадров
        self.images = []
        for i in range(1,3):
         img = pygame.image.load(os.path.join("sto" + str(i) + ".png")).convert()
         img.convert_alpha()
         img.set_colorkey((0,0,0))

         self.images.append(img)
         self.image = self.images[0]
         self.rect = self.image.get_rect()
            

    def control(self,x,y):
        # Управление перемещением главного персонажа

        self.movex += x
        self.movey += y

    def update(self):
        #новая позиция спрайта

        self.rect.x = self.rect.x + self.movex
        self.rect.y = self.rect.y + self.movey

        # ВЛЕВО
        if self.movex < 0:
            self.frame += 1
            if self.frame > 3 *ani:
                self.frame = 0
            self.image = self.images[self.frame//ani]

        # Вправо
        if self.movex > 0:
            self.frame += 1
            if self.frame > 3 *ani:
                self.frame = 0
            self.image = self.images[self.frame//ani]        

        # img = pygame.image.load(os.path.join('sto.png'))
        # self.images.append(img)
        # self.image = self.images[0]
        # self.rect = self.image.get_rect()

# Настройка

pygame.display.set_caption("Best Parkour Master | Tigran Gevorkyan")
pygame.display.set_icon(pygame.image.load("ико.png"))
clock = pygame.time.Clock()
pygame.init()
world = pygame.display.set_mode([worldx, worldy])
player = Player() #создать спрайт
player.rect.x = 0 #x
player.rect.y = 0 #y
player_list = pygame.sprite.Group()
player_list.add(player)
steps = 10 # пиксели для перемещения

# Скорость перемещения персонажа
speed = 5

# Цвет фона (если необходимо)
BACKGROUND_COLOR = (255, 255, 255)

# Загрузка изображений
background_image = pygame.image.load('фон1.png')



# Позиция спрайта
sprite_x = -10
sprite_y = 360


# Основной игровой цикл
while main:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            try:
                sys.exit
            finally:
                main = False

        
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT or event.key == ord("a"):
                player.control(-steps, 0)
            if event.key == pygame.K_RIGHT or event.key == ord("d"):
                player.control(steps, 0)
            if event.key == pygame.K_UP or event.key == ord("w"):
                print("jump")
        if event.type == pygame.KEYUP:
            if event.key == pygame.K_LEFT or event.key == ord("a"):
                player.control(steps, 0)
            if event.key == pygame.K_RIGHT or event.key == ord("d"):
                player.control(-steps, 0)
               
            if event.key == ord("q"):
                pygame.quit()
                sys.exit()
                main = False

    # Рисуем фон
    world.blit(background_image, (0, 0))

    # Рисуем спрайт
    player.update()
    player_list.draw(world)

    # Обновляем экран
    pygame.display.flip()
    clock.tick(fps)

Момент данный с калором в создание класса Player:

BLUE = (25,25,200)
BLACK = (23,23,23)
WHITE = (254,254,254)
ALPHA = (0,255,0)

main = True

# Объекты
class Player(pygame.sprite.Sprite):
    #персонаж сам
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)  # тут тоже надо 2 подчеркивания
        self.movex = 0 # перемещение по х
        self.movey = 0 # перемещение по у
        self.frame = 0 #подсчет кадров
        self.images = []
        for i in range(1,3):
         img = pygame.image.load(os.path.join("sto" + str(i) + ".png")).convert()
         img.convert_alpha()
         img.set_colorkey((0,0,0))

         self.images.append(img)
         self.image = self.images[0]
         self.rect = self.image.get_rect()`введите сюда код`

Ответы (0 шт):