我在python中使用了一个类(我在这个程序中也使用了pygame),但是它不允许我调用这个特定的方法。这个班叫做“敌人”。
这是问题解决方法:def attack(self, screen):
self.charx = self.screen.get_width()/2 - self.pic.get_width()/2
self.chary = self.screen.get_height()/2 - self.pic.get_height()/2
textbox(self.screen, self.charx - self.c.rect.x + self.rect.x, self.chary - self.c.rect.y + self.rect.y, 15, 5, True, (255, 255, 255), True, (0, 0, 0), 0, '', True, (255, 0, 0), 15*self.healthpercent)
if self.rect.colliderect(self.w.rect):
if self.agility*random.randint(1, 10) > self.c.agility*random.randint(1, 10):
self.c.health -= self.level*5
if self.agility*random.randint(1, 10) <= self.c.agility*random.randint(1, 10):
self.health -= self.w.weaponpower*self.c.strength
self.healthpercent = self.health/self.level*100
if self.health == 0:
self.dead = True
我这样称呼它:
^{pr2}$
显然有些变量名等是在别处定义的,但我不认为这些位是必要的。
这是完整的堆栈跟踪:Traceback (most recent call last):
File "E:\Code\Game\Main6.py", line 119, in
e.attack(screen)
TypeError: 'int' object is not callable
>>>