所以我有一个问题,我不太明白为什么会这样。当它应该在我的武器类上时,我得到(名称错误全局变量“值”未定义)。
from items import *
class weapons(Item):
def __init__(self, name, attack_damage, lifesteal = 0):
super(weapons,self).__init__(name, value, quantity=1)
self.attack_damage = attack_damage
self.lifesteal = lifesteal
这是武器从已经定义了值的类中得到的类。
class Item(object):
def __init__(self, name, value, quantity=1):
self.name = name
self.raw = name.replace(" ","").lower()
self.quantity = quantity
self.value = value
self.netValue = quantity * value
def recalc(self):
self.netValue = self.quantity * self.value
我已经有一段类似于此的代码正在运行,但由于某种原因,这个值错误正在发生。我只想把它包括在内。
from character import*
class player(character):
def __init__(self,name,hp,maxhp,attack_damage,ability_power):
super(player,self).__init__(name, hp, maxhp)
self.attack_damage = attack_damage
self.ability_power = ability_power
以及该玩家从
获取其内容的类class character(object):
def __init__(self,name,hp,maxhp):
self.name = name
self.hp = hp
self.maxhp = maxhp
def attack(self,other):
pass
你可以看到我在这里做了这个代码,当我给玩家打电话时这段代码可以工作。
答案 0 :(得分:1)
您需要将value
参数添加到武器类的__init__
构造函数中。
答案 1 :(得分:0)
super
需要参数value
,但您没有将其传递到 init