pygame.sprite.Group()中的对象方法

时间:2013-06-05 21:16:52

标签: python pygame sprite

我有几个sprite组检查彼此的冲突,我想访问精灵组的一个成员的方法,如下所示......

for hit in pygame.sprite.groupcollide(badSprites, Missiles, 0, 1):
     hit.health(100)
     hit.printMessage("NO")

由于某种原因,hit.printYes方法有效但hit.health方法给我一个类型错误

  

TypeError:'int'对象不可调用

这是碰撞对象里面的方法......

def health(self, damage):
    self.damage = damage
    self.health -= damage
    return self.health
def printMessage(self, message):
    print(message)

正如你所看到的,我只想改变物体与导弹发生​​碰撞时的健康状况,但看起来我只能传递字符串而不是数字。我尝试将“100”作为字符串发送,然后在health()内输入,但这也不起作用。也许我的代码在其他地方是错误的。

1 个答案:

答案 0 :(得分:1)

您不能拥有与属性同名的方法,将方法更改为set_health或类似的东西