0

我需要在屏幕上的随机位置绘制精灵,我该怎么做?

class SpriteOrange(MyGame):
def __init__(self, image):
    self.image = pygame.image.load(image)
    self.x = 0
    self.y = 0
def draw1(self, screen):
    screen.blit(self.image, self.x, self.y)

def update(self):
    self.x = random.randrange(0, 400)
    self.y = random.randrange(0, 400)
4

1 回答 1

2

您可以SpriteOrange使用函数draw(screen)update()(随机更改位置)创建类:

class SpriteOrange():

    def __init__(self, image):
        self.image = pygame.image.load(image)
        self.x = 0
        self.y = 0

    def draw(self, screen):
        screen.blit(self.image, self.x, self.y)

    def update(self):
        self.x = random.randrange(0,400)
        self.y = random.randrange(0,400)

您可以创建 SpriteOrange 的实例列表

self.oranges = []

for x in range(10):
    self.oranges.append(SpriteOrange('orange.png'))

您可以更改职位:

for o in self.oranges:
    o.update()

你可以画:

for o in self.oranges:
    o.draw(self.screen)

如果您需要更多了解pygame.sprite.Spritepygame.sprite.Group

于 2013-11-13T22:58:23.430 回答