Add the four main combat boost module effects
This commit is contained in:
@@ -16,17 +16,71 @@ def handler(fit, module, context, **kwargs):
|
||||
|
||||
def runEffect(id, value):
|
||||
print "RUN EFFECT: ", fit,
|
||||
if id == 21: # Skirmish Burst: Interdiction Maneuvers: Tackle Range
|
||||
print "Tackle Range"
|
||||
return
|
||||
groups = ("Stasis Web", "Warp Scrambler")
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
|
||||
"maxRange", value,
|
||||
stackingPenalties=True)
|
||||
if id == 10:
|
||||
print "Shield Resists"
|
||||
|
||||
print "Inside the CHARGE"
|
||||
if id == 10: # Shield Burst: Shield Harmonizing: Shield Resistance
|
||||
for damageType in ("Em", "Explosive", "Thermal", "Kinetic"):
|
||||
fit.ship.boostItemAttr("shield%sDamageResonance" % damageType, value, stackingPenalties=True)
|
||||
|
||||
if id == 11: # Shield Burst: Active Shielding: Repair Duration/Capacitor
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", value)
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Shield Emission Systems"), "duration", value)
|
||||
|
||||
if id == 12: # Shield Burst: Shield Extension: Shield HP
|
||||
fit.ship.boostItemAttr("shieldCapacity", value, stackingPenalties=True)
|
||||
|
||||
if id == 13: # Armor Burst: Armor Energizing: Armor Resistance
|
||||
for damageType in ("Em", "Thermal", "Explosive", "Kinetic"):
|
||||
fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, value, stackingPenalties=True)
|
||||
|
||||
if id == 14: # Armor Burst: Rapid Repair: Repair Duration/Capacitor
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or mod.item.requiresSkill("Repair Systems"), "capacitorNeed", value)
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or mod.item.requiresSkill("Repair Systems"), "duration", value)
|
||||
|
||||
if id == 15: # Armor Burst: Armor Reinforcement: Armor HP
|
||||
fit.ship.boostItemAttr("armorHP", value, stackingPenalties=True)
|
||||
|
||||
if id == 16: # Information Burst: Sensor Optimization: Scan Resolution
|
||||
fit.ship.boostItemAttr("scanResolution", value, stackingPenalties=True)
|
||||
|
||||
if id == 17: # Information Burst: Electronic Superiority: EWAR Range and Strength
|
||||
pass
|
||||
groups = ("ECM", "Sensor Dampener", "Weapon Disruptor", "Target Painter")
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", value, stackingPenalties=True)
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "falloffEffectiveness", value, stackingPenalties=True)
|
||||
|
||||
for scanType in ("Magnetometric", "Radar", "Ladar", "Gravimetric"):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.nam == "ECM", "scan%sStrengthBonus" % scanType, value, stackingPenalties=True)
|
||||
|
||||
for attr in ("missileVelocityBonus", "explosionDelayBonus", "aoeVelocityBonus", "falloffBonus",
|
||||
"maxRangeBonus", "aoeCloudSizeBonus", "trackingSpeedBonus"):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", attr, value)
|
||||
|
||||
for attr in ("maxTargetRangeBonus", "scanResolutionBonus"):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", attr, value)
|
||||
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.gorup.name == "Target Painter", "signatureRadiusBonus", value, stackingPenalties=True)
|
||||
|
||||
if id == 18: # Information Burst: Electronic Hardening: Scan Strength
|
||||
for scanType in ("Gravimetric", "Radar", "Ladar", "Magnetometric"):
|
||||
fit.ship.boostItemAttr("scan%sStrength" % scanType, value, stackingPenalties=True)
|
||||
|
||||
if id == 19: # Information Burst: Electronic Hardening: RSD/RWD Resistance
|
||||
fit.ship.boostItemAttr("sensorDampenerResistance", value)
|
||||
fit.ship.boostItemAttr("weaponDisruptionResistance", value)
|
||||
|
||||
if id == 26: # Information Burst: Sensor Optimization: Targeting Range
|
||||
fit.ship.boostItemAttr("maxTargetRange", value)
|
||||
|
||||
if id == 20: # Skirmish Burst: Evasive Maneuvers: Signature Radius
|
||||
fit.ship.boostItemAttr("signatureRadius", value, stackingPenalties=True)
|
||||
|
||||
if id == 21: # Skirmish Burst: Interdiction Maneuvers: Tackle Range
|
||||
groups = ("Stasis Web", "Warp Scrambler")
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", value,
|
||||
stackingPenalties=True)
|
||||
|
||||
if id == 22: # Skirmish Burst: Rapid Deployment: AB/MWD Speed Increase
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner") or mod.item.requiresSkill("High Speed Maneuvering"), "speedFactor", value, stackingPenalties=True)
|
||||
|
||||
for x in xrange(1, 4):
|
||||
if module.getModifiedChargeAttr("warfareBuff{}ID".format(x)):
|
||||
|
||||
Reference in New Issue
Block a user