baseBurstEffect.py (2668B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\dbuff\common\baseBurstEffect.py 2 import dogma.const as dogmaConst 3 4 def GetModuleBuffValues(dogmaLM, moduleID): 5 buffValues = {} 6 for buffIDAttribute, buffValueAttribute in dogmaConst.dbuffAttributeValueMappings.iteritems(): 7 dbuffCollectionID = int(dogmaLM.GetAttributeValue(moduleID, buffIDAttribute)) 8 if dbuffCollectionID > 0: 9 buffValues[dbuffCollectionID] = dogmaLM.GetAttributeValue(moduleID, buffValueAttribute) 10 11 return buffValues 12 13 14 def GetBuffValuesAndDurationMillis(dogmaLM, itemID): 15 effectDurationMillis = dogmaLM.GetAttributeValue(itemID, dogmaConst.attributeBuffDuration) 16 buffValues = GetModuleBuffValues(dogmaLM, itemID) 17 return (buffValues, effectDurationMillis) 18 19 20 def ApplyBuffToSourceShip(dogmaLM, charID, shipID, buffDuration, buffValues): 21 dbuffRegistry = dogmaLM.dbuffRegistry 22 dbuffRegistry.ApplyBuffsToItems([shipID], buffDuration, buffValues, charID) 23 24 25 class BurstEffectDecorator(object): 26 27 def __init__(self, arg): 28 self.variableDict = arg 29 30 def __call__(self, cls): 31 32 class Wrapped(cls): 33 for key, value in self.variableDict.iteritems(): 34 setattr(cls, key, value) 35 36 return Wrapped 37 38 39 def GetArmorEffectClassVariables(): 40 return {'__guid__': 'dogmaXP.CommandBurstArmorEffect', 41 '__effectIDs__': ['effectModuleBonusWarfareLinkArmor'], 42 'sourceVFXEffect': 'effects.WarfareLinkSphereArmor', 43 'targetVFXEffect': 'effects.WarfareLinkArmor'} 44 45 46 def GetInfoEffectClassVariables(): 47 return {'__guid__': 'dogmaXP.CommandBurstInfoEffect', 48 '__effectIDs__': ['effectModuleBonusWarfareLinkInfo'], 49 'sourceVFXEffect': 'effects.WarfareLinkSphereInformation', 50 'targetVFXEffect': 'effects.WarfareLinkInformation'} 51 52 53 def GetMiningEffectClassVariables(): 54 return {'__guid__': 'dogmaXP.CommandBurstMiningEffect', 55 '__effectIDs__': ['effectModuleBonusWarfareLinkMining'], 56 'sourceVFXEffect': 'effects.WarfareLinkSphereMining', 57 'targetVFXEffect': 'effects.WarfareLinkMining'} 58 59 60 def GetShieldEffectClassVariables(): 61 return {'__guid__': 'dogmaXP.CommandBurstShieldEffect', 62 '__effectIDs__': ['effectModuleBonusWarfareLinkShield'], 63 'sourceVFXEffect': 'effects.WarfareLinkSphereShield', 64 'targetVFXEffect': 'effects.WarfareLinkShield'} 65 66 67 def GetSkirmishEffectClassVariables(): 68 return {'__guid__': 'dogmaXP.CommandBurstSkirmishEffect', 69 '__effectIDs__': ['effectModuleBonusWarfareLinkSkirmish'], 70 'sourceVFXEffect': 'effects.WarfareLinkSphereSkirmish', 71 'targetVFXEffect': 'effects.WarfareLinkSkirmish'}