NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

modifiereffect.py (1212B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\dogma\effects\modifiereffect.py
      2 from dogma.effects import Effect
      3 import dogma.const as dgmconst
      4 
      5 def IsPassiveEffect(effectInfo):
      6     return effectInfo.effectCategory in dgmconst.dgmPassiveEffectCategories
      7 
      8 
      9 class ModifierEffect(Effect):
     10     __modifier_only__ = True
     11 
     12     def __init__(self, effectInfo, modifiers, side_effects = None):
     13         self.isPythonEffect = False
     14         self.__modifies_ship__ = IsPassiveEffect(effectInfo) and any((m.IsShipModifier() for m in modifiers))
     15         self.__modifies_structure__ = IsPassiveEffect(effectInfo) and any((m.IsStructureModifier() for m in modifiers))
     16         self.__modifies_character__ = IsPassiveEffect(effectInfo) and any((m.IsCharModifier() for m in modifiers))
     17         self.__modifier_domain_other__ = IsPassiveEffect(effectInfo) and any((m.IsOtherModifier() for m in modifiers))
     18         self.effects = modifiers
     19         if side_effects:
     20             self.effects.extend(side_effects)
     21 
     22     def Start(self, *args):
     23         map(lambda e: e.Start(*args), self.effects)
     24 
     25     def Stop(self, *args):
     26         map(lambda e: e.Stop(*args), self.effects)
     27 
     28     RestrictedStop = Stop