我正在尝试使用pygame做一个典型的平台游戏,但我不确定我应该如何执行死亡序列。我想要这样,以便玩家死后,如果所有精灵都移动,它们的位置将重置为原始位置。
我尝试使用pygame.sprite.Group().copy()
进行实验,但我不知道如何使用它,甚至不适合我的情况。
答案 0 :(得分:0)
我将原始位置的副本存储在sprite中,然后按照@furas建议通过reset()
函数重新定位并重新指定sprite。
例如:
class ResettableSprite( pygame.sprite.Sprite ):
MAX_HEALTH = 100
def __init__( self, image, x, y ):
pygame.sprite.Sprite.__init__( self )
self.image = image
self.rect = self.image.get_rect()
self.start_x = x
self.start_y = y
self.reset()
def reset( self ):
self.rect.x = self.start_x
self.rect.y = self.start_y
self.health = ResettableSprite.MAX_HEALTH
# ... etc.