我正在尝试制作在屏幕上随机位置产生的PowerUps。我也希望它们以不同的时间间隔产卵,并在一段时间后消失。但是,我不确定如何处理这个问题。我应该使用Pygame的内置计时器功能还是有更好的方法来做到这一点?
这是我到目前为止所做的:
class PowerUp(Image):
def __init__(self, screen_size, width, height, filename, powerup_group, color = (255, 0, 0)):
self.powerup_group = powerup_group
super().__init__(screen_size, width, height, filename, color = (255, 0 , 0))
_centerx = random.randint(20, 1100) # <-- local variable _centerx
_centery = random.randint(20, 700) # <-- local variable _centery =
self.radius = 10
self.rect = pygame.Rect(_centerx-self.radius,
_centery-self.radius,
self.radius*2, self.radius*2)
def update(self):
#Should I use pygame's timer or is there a better method?
self.powerup_group.add(PowerUp(screen_size, width, height, filename, powerup_group, color = (255, 0 , 0)))