Merge pull request #336 from blitzmann/regSkills

Register skills when applying ship bonuses
This commit is contained in:
Ryan Holmes
2015-07-23 15:58:07 -04:00
788 changed files with 832 additions and 1599 deletions

View File

@@ -204,23 +204,24 @@ class Skill(HandledItem):
self.itemID = item.ID if not isinstance(item, int) else item
self.__level = level if learned else None
self.commandBonus = 0
self.learned = learned
self.build(ro)
@reconstructor
def init(self):
self.build(False)
self.learned = self.__level is not None
self.__item = None
def build(self, ro):
self.__ro = ro
self.__suppressed = False
@property
def learned(self):
return self.__level is not None
@property
def level(self):
if not self.learned: return 0
else: return self.__level or 0
return self.__level or 0
@level.setter
def level(self, level):
@@ -231,7 +232,6 @@ class Skill(HandledItem):
raise ReadOnlyException()
self.__level = level
self.learned = True
@property
def item(self):
@@ -255,11 +255,11 @@ class Skill(HandledItem):
return
for effect in item.effects.itervalues():
if effect.runTime == runTime and effect.isType("passive"):
try:
effect.handler(fit, self, ("skill",))
except AttributeError:
continue
if effect.runTime == runTime and effect.isType("passive"):
try:
effect.handler(fit, self, ("skill",))
except AttributeError:
continue
def clear(self):
self.__suppressed = False