Pygame - класс окна и спрайта - python

Я пытаюсь создать класс окна, который напоминает класс, в котором живут спрайты. В классе окна я хочу иметь следующие вещи:

set_background ()set_size ()add_sprite ()remove_sprite ()

В классе спрайта я хочу следующие методы:

draw_sprite ()

На данный момент у меня будет один спрайт, но я бы хотел получить список спрайтов.

Я попытался запустить то, что у меня есть в главном классе, вызывая эти методы в его экземплярах.

window = Window(200,200)
sprite = Sprite(Window)

window.set_Background()
sprite.draw_sprite()

Вот мой код:

Спрайт класс:

import pygame

pygame.init()

class Sprite(object):
    def __init__(self, World =None, sprite=[]):
        self.Window = window

    def draw_sprite(self,sprite,x,y):
        sprite=pygame.image.load(sprite)
        self.World.window.blit(sprite,(x,y))
        pygame.display.update()

        while True:
            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    pygame.quit()

Окно класс:

import pygame,sys,os from pygame.locals import *

from Window import *

class Panel:
  def __init__(self, width=None,height=None):
      self.width= width
      self.height = height
      self.foreground=pygame.Surface((width, height))
      self.background= pygame.Surface((width, height))
      self.rect= self.foreground.get_rect()

  def clear(self):
      self.foreground.blit(self.background,(0,0))

  def set_background(self, image=None):
      if sky is not None:
          bg = Window.draw_world(self,image)
          self.background.blit(bg,(width,height))

class Window(Panel):
  pygame.init()
  def __init__(self,width,height):
      self.window = pygame.display.set_mode((width,height))
      self.width=width
      self.height=height
      Panel.__init__(self, width, height)
      self._foreground = self.window
      self.set_background()

  def draw_world(self,image):
      image=pygame.image.load(image)
      for x in range(0,(290/image.get_width()+1)):
          for y in range(0,(230/image.get_height()+1)):
              self.background.blit(image,(x*200,y*200))
              pygame.display.update()

      while True:
          for event in pygame.event.get():
              if event.type == pygame.QUIT:
                  pygame.quit()


  def window_setSize(width,height):
      self.width=width
      self.heght =height

основной класс:

from Sprite import * 
from window import *

sprite = Sprite() 

window=Window()
sprite.draw_sprite("sprite.png",100,200)
window.set_background("bg.png")

Кто-нибудь получил какие-либо идеи, почему отображается спрайт, но мой фон нет? Это просто показывает черный фон.

Я использую Python 3 и Pygame 3.3 Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос