diff --git a/eos/effects/modedamptdresistspostdiv.py b/eos/effects/modedamptdresistspostdiv.py new file mode 100644 index 000000000..15f8d91f3 --- /dev/null +++ b/eos/effects/modedamptdresistspostdiv.py @@ -0,0 +1,5 @@ +type = "passive" + +def handler(fit, module, context): + fit.ship.multiplyItemAttr("weaponDisruptionResistance", 1 / module.getModifiedItemAttr("modeEwarResistancePostDiv")) + fit.ship.multiplyItemAttr("sensorDampenerResistance", 1 / module.getModifiedItemAttr("modeEwarResistancePostDiv")) diff --git a/eos/effects/modemwdandabboostpostdiv.py b/eos/effects/modemwdandabboostpostdiv.py new file mode 100644 index 000000000..5ea53efeb --- /dev/null +++ b/eos/effects/modemwdandabboostpostdiv.py @@ -0,0 +1,11 @@ +type = "passive" + + +def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill("High Speed Maneuvering") or mod.item.requiresSkill("Afterburner"), + "speedFactor", + 1 / module.getModifiedItemAttr("modeVelocityPostDiv"), + stackingPenalties=True, + penaltyGroup="postDiv" + ) diff --git a/eos/effects/shipmodesetdamagepostdiv.py b/eos/effects/shipmodesetdamagepostdiv.py new file mode 100644 index 000000000..0c7548853 --- /dev/null +++ b/eos/effects/shipmodesetdamagepostdiv.py @@ -0,0 +1,11 @@ +type = "passive" + + +def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill("Small Energy Turret"), + "damageMultiplier", + 1 / module.getModifiedItemAttr("modeDamageBonusPostDiv"), + stackingPenalties=True, + penaltyGroup="postDiv" + ) diff --git a/eos/effects/shipmodeshtdamagepostdiv.py b/eos/effects/shipmodeshtdamagepostdiv.py new file mode 100644 index 000000000..46c37b500 --- /dev/null +++ b/eos/effects/shipmodeshtdamagepostdiv.py @@ -0,0 +1,11 @@ +type = "passive" + + +def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), + "damageMultiplier", + 1 / module.getModifiedItemAttr("modeDamageBonusPostDiv"), + stackingPenalties=True, + penaltyGroup="postDiv" + ) diff --git a/eos/effects/shipmodesmallmissiledamagepostdiv.py b/eos/effects/shipmodesmallmissiledamagepostdiv.py new file mode 100644 index 000000000..4d1a279b6 --- /dev/null +++ b/eos/effects/shipmodesmallmissiledamagepostdiv.py @@ -0,0 +1,7 @@ +type = "passive" + +def handler(fit, module, context): + types = ("thermal", "em", "explosive", "kinetic") + for type in types: + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), + "{}Damage".format(type), 1 / module.getModifiedItemAttr("modeDamageBonusPostDiv")) diff --git a/eos/effects/shipmodesptdamagepostdiv.py b/eos/effects/shipmodesptdamagepostdiv.py new file mode 100644 index 000000000..57a839f26 --- /dev/null +++ b/eos/effects/shipmodesptdamagepostdiv.py @@ -0,0 +1,11 @@ +type = "passive" + + +def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill("Small Projectile Turret"), + "damageMultiplier", + 1 / module.getModifiedItemAttr("modeDamageBonusPostDiv"), + stackingPenalties=True, + penaltyGroup="postDiv" + )