From a020ca9a719f11f80276d5a00122361801fc394f Mon Sep 17 00:00:00 2001 From: blitzmann Date: Thu, 10 Mar 2016 23:43:24 -0500 Subject: [PATCH] Fix tracking / guidance disrupters --- eos/effects/remoteguidancedisruptfalloff.py | 17 +++++++++++++++++ eos/effects/remotetrackingdisruptfalloff.py | 16 ++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 eos/effects/remoteguidancedisruptfalloff.py create mode 100644 eos/effects/remotetrackingdisruptfalloff.py diff --git a/eos/effects/remoteguidancedisruptfalloff.py b/eos/effects/remoteguidancedisruptfalloff.py new file mode 100644 index 000000000..9a21fdb6a --- /dev/null +++ b/eos/effects/remoteguidancedisruptfalloff.py @@ -0,0 +1,17 @@ +# targetMissileDisruptorHostile +# +# Used by: +# Variations of module: Guidance Disruptor I (6 of 6) +type = "active", "projected" + +def handler(fit, src, context): + if "projected" in context: + for srcAttr, tgtAttr in ( + ("aoeCloudSizeBonus", "aoeCloudSize"), + ("aoeVelocityBonus", "aoeVelocity"), + ("missileVelocityBonus", "maxVelocity"), + ("explosionDelayBonus", "explosionDelay"), + ): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), + tgtAttr, src.getModifiedItemAttr(srcAttr), + stackingPenalties=True) diff --git a/eos/effects/remotetrackingdisruptfalloff.py b/eos/effects/remotetrackingdisruptfalloff.py new file mode 100644 index 000000000..fa4092ecb --- /dev/null +++ b/eos/effects/remotetrackingdisruptfalloff.py @@ -0,0 +1,16 @@ +# targetGunneryMaxRangeAndTrackingSpeedAndFalloffBonusHostile +# +# Used by: +# Variations of module: Tracking Disruptor I (6 of 6) +type= "projected", "active" +def handler(fit, module, context): + if "projected" in context: + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), + "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), + stackingPenalties = True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), + "maxRange", module.getModifiedItemAttr("maxRangeBonus"), + stackingPenalties = True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), + "falloff", module.getModifiedItemAttr("falloffBonus"), + stackingPenalties = True)