adaptiveHardener.py (1963B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\common\script\dogma\pythonEffects\adaptiveHardener.py 2 from dogma.effects import Effect 3 import dogma.const as dConst 4 5 class BaseAdaptiveHardener(Effect): 6 __guid__ = 'dogmaXP.AdaptiveHardener' 7 __effectIDs__ = ['effectAdaptiveArmorHardener'] 8 MODIFIER_CHANGES = [(dConst.dgmAssPreMul, dConst.attributeArmorEmDamageResonance, dConst.attributeArmorEmDamageResonance), 9 (dConst.dgmAssPreMul, dConst.attributeArmorExplosiveDamageResonance, dConst.attributeArmorExplosiveDamageResonance), 10 (dConst.dgmAssPreMul, dConst.attributeArmorKineticDamageResonance, dConst.attributeArmorKineticDamageResonance), 11 (dConst.dgmAssPreMul, dConst.attributeArmorThermalDamageResonance, dConst.attributeArmorThermalDamageResonance)] 12 13 def Start(self, env, dogmaLM, itemID, shipID, charID, otherID, targetID): 14 self._SetDamageStats(env, dogmaLM, shipID) 15 try: 16 attributeValuesToUpdate = self._GetAttributeValuesToUpdate(env) 17 except AttributeError: 18 pass 19 else: 20 for attributeID, value in attributeValuesToUpdate.iteritems(): 21 dogmaLM.SetAttributeValue(itemID, attributeID, value, dirty=False) 22 23 self.AddModifiers(dogmaLM, shipID, itemID) 24 25 def _SetDamageStats(self, env, dogmaLM, shipID): 26 pass 27 28 def _GetAttributeValuesToUpdate(self, env): 29 return {} 30 31 def Stop(self, env, dogmaLM, itemID, shipID, charID, otherID, targetID): 32 self.RemoveModifiers(dogmaLM, shipID, itemID) 33 self.ProcessStop(env, dogmaLM, itemID, shipID) 34 35 def ProcessStop(self, env, dogmaLM, itemID, shipID): 36 pass 37 38 def RestrictedStop(self, env, dogmaLM, itemID, shipID, charID, otherID, targetID): 39 self.RemoveModifiers(dogmaLM, shipID, itemID) 40 self.ProcessRestrictStop(env, dogmaLM, itemID) 41 42 def ProcessRestrictStop(self, env, dogmaLM, itemID): 43 pass