diff --git a/.appveyor.yml b/.appveyor.yml index 821bbe7d3..65d78d226 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -119,7 +119,7 @@ artifacts: - path: pyfa*-win.exe #- path: pyfa_debug.zip # name: Pyfa_debug - + deploy: tag: $(pyfa_version) release: pyfa $(pyfa_version) @@ -132,4 +132,4 @@ deploy: APPVEYOR_REPO_TAG: true # deploy on tag push only #on_success: # - TODO: upload the content of dist/*.whl to a public wheelhouse -# \ No newline at end of file +# diff --git a/config.py b/config.py index 371adf8e2..6a4e2e95c 100644 --- a/config.py +++ b/config.py @@ -171,9 +171,6 @@ def defPaths(customSavePath=None): eos.config.saveddata_connectionstring = "sqlite:///" + saveDB + "?check_same_thread=False" eos.config.gamedata_connectionstring = "sqlite:///" + gameDB + "?check_same_thread=False" - print(eos.config.saveddata_connectionstring) - print(eos.config.gamedata_connectionstring) - # initialize the settings from service.settings import EOSSettings eos.config.settings = EOSSettings.getInstance().EOSSettings # this is kind of confusing, but whatever diff --git a/dist_assets/mac/pyfa.spec b/dist_assets/mac/pyfa.spec index 1e1f35711..a461774de 100644 --- a/dist_assets/mac/pyfa.spec +++ b/dist_assets/mac/pyfa.spec @@ -35,7 +35,7 @@ import_these = [ icon = os.path.join(os.getcwd(), "dist_assets", "mac", "pyfa.icns") # Walk directories that do dynamic importing -paths = ('eos/effects', 'eos/db/migrations', 'service/conversions') +paths = ('eos/db/migrations', 'service/conversions') for root, folders, files in chain.from_iterable(os.walk(path) for path in paths): for file_ in files: if file_.endswith(".py") and not file_.startswith("_"): diff --git a/dist_assets/win/pyfa.spec b/dist_assets/win/pyfa.spec index 1bdf820f0..09fac9e28 100644 --- a/dist_assets/win/pyfa.spec +++ b/dist_assets/win/pyfa.spec @@ -33,7 +33,7 @@ import_these = [ ] # Walk directories that do dynamic importing -paths = ('eos/effects', 'eos/db/migrations', 'service/conversions') +paths = ('eos/db/migrations', 'service/conversions') for root, folders, files in chain.from_iterable(os.walk(path) for path in paths): for file_ in files: if file_.endswith(".py") and not file_.startswith("_"): diff --git a/eos/effects.py b/eos/effects.py new file mode 100644 index 000000000..eff818e59 --- /dev/null +++ b/eos/effects.py @@ -0,0 +1,35599 @@ +# =============================================================================== +# Copyright (C) 2010 Diego Duclos +# +# This file is part of eos. +# +# eos is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# eos is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with eos. If not, see . +# =============================================================================== + + +import eos.config +from eos.const import FittingModuleState +from eos.utils.spoolSupport import SpoolType, SpoolOptions, calculateSpoolup, resolveSpoolOptions + + +class BaseEffect: + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + pass + + +class DummyEffect(BaseEffect): + pass + + +class Effect4(BaseEffect): + """ + shieldBoosting + + Used by: + Modules from group: Shield Booster (97 of 97) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + amount = module.getModifiedItemAttr('shieldBonus') + speed = module.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('shieldRepair', amount / speed) + + +class Effect10(BaseEffect): + """ + targetAttack + + Used by: + Drones from group: Combat Drone (75 of 75) + Modules from group: Energy Weapon (212 of 214) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + # Set reload time to 1 second + module.reloadTime = 1000 + + +class Effect17(BaseEffect): + """ + mining + + Used by: + Drones from group: Mining Drone (10 of 10) + """ + + grouped = True + type = 'passive' + + @staticmethod + def handler(fit, container, context): + miningDroneAmountPercent = container.getModifiedItemAttr('miningDroneAmountPercent') + if (miningDroneAmountPercent is None) or (miningDroneAmountPercent == 0): + pass + else: + container.multiplyItemAttr('miningAmount', miningDroneAmountPercent / 100) + + +class Effect21(BaseEffect): + """ + shieldCapacityBonusOnline + + Used by: + Modules from group: Shield Extender (36 of 36) + Modules from group: Shield Resistance Amplifier (88 of 88) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('shieldCapacity', module.getModifiedItemAttr('capacityBonus')) + + +class Effect25(BaseEffect): + """ + capacitorCapacityBonus + + Used by: + Modules from group: Capacitor Battery (30 of 30) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.increaseItemAttr('capacitorCapacity', ship.getModifiedItemAttr('capacitorBonus')) + + +class Effect26(BaseEffect): + """ + structureRepair + + Used by: + Modules from group: Hull Repair Unit (25 of 25) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + amount = module.getModifiedItemAttr('structureDamageAmount') + speed = module.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('hullRepair', amount / speed) + + +class Effect27(BaseEffect): + """ + armorRepair + + Used by: + Modules from group: Armor Repair Unit (108 of 108) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + amount = module.getModifiedItemAttr('armorDamageAmount') + speed = module.getModifiedItemAttr('duration') / 1000.0 + rps = amount / speed + fit.extraAttributes.increase('armorRepair', rps) + fit.extraAttributes.increase('armorRepairPreSpool', rps) + fit.extraAttributes.increase('armorRepairFullSpool', rps) + + +class Effect34(BaseEffect): + """ + projectileFired + + Used by: + Modules from group: Hybrid Weapon (221 of 221) + Modules from group: Projectile Weapon (165 of 165) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + rt = module.getModifiedItemAttr('reloadTime') + if not rt: + # Set reload time to 10 seconds + module.reloadTime = 10000 + else: + module.reloadTime = rt + + +class Effect38(BaseEffect): + """ + empWave + + Used by: + Modules from group: Smart Bomb (118 of 118) + """ + + type = 'active' + + +class Effect39(BaseEffect): + """ + warpDisrupt + + Used by: + Modules named like: Warp Disruptor (28 of 28) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' in context: + fit.ship.increaseItemAttr('warpScrambleStatus', module.getModifiedItemAttr('warpScrambleStrength')) + + +class Effect48(BaseEffect): + """ + powerBooster + + Used by: + Modules from group: Capacitor Booster (59 of 59) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + # Set reload time to 10 seconds + module.reloadTime = 10000 + # Make so that reloads are always taken into account during clculations + module.forceReload = True + + if module.charge is None: + return + capAmount = module.getModifiedChargeAttr('capacitorBonus') or 0 + module.itemModifiedAttributes['capacitorNeed'] = -capAmount + + +class Effect50(BaseEffect): + """ + modifyShieldRechargeRate + + Used by: + Modules from group: Capacitor Power Relay (20 of 20) + Modules from group: Power Diagnostic System (23 of 23) + Modules from group: Reactor Control Unit (22 of 22) + Modules from group: Shield Recharger (4 of 4) + Modules named like: Flux Coil (12 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('shieldRechargeRate', module.getModifiedItemAttr('shieldRechargeRateMultiplier') or 1) + + +class Effect51(BaseEffect): + """ + modifyPowerRechargeRate + + Used by: + Modules from group: Capacitor Flux Coil (6 of 6) + Modules from group: Capacitor Power Relay (20 of 20) + Modules from group: Capacitor Recharger (18 of 18) + Modules from group: Power Diagnostic System (23 of 23) + Modules from group: Reactor Control Unit (22 of 22) + Modules from group: Shield Power Relay (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('rechargeRate', module.getModifiedItemAttr('capacitorRechargeRateMultiplier')) + + +class Effect55(BaseEffect): + """ + targetHostiles + + Used by: + Modules from group: Automated Targeting System (6 of 6) + """ + + type = 'active' + + +class Effect56(BaseEffect): + """ + powerOutputMultiply + + Used by: + Modules from group: Capacitor Flux Coil (6 of 6) + Modules from group: Capacitor Power Relay (20 of 20) + Modules from group: Power Diagnostic System (23 of 23) + Modules from group: Reactor Control Unit (22 of 22) + Variations of structure module: Standup Reactor Control Unit I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + # We default this to None as there are times when the source attribute doesn't exist (for example, Cap Power Relay). + # It will return 0 as it doesn't exist, which would nullify whatever the target attribute is + fit.ship.multiplyItemAttr('powerOutput', module.getModifiedItemAttr('powerOutputMultiplier', None)) + + +class Effect57(BaseEffect): + """ + shieldCapacityMultiply + + Used by: + Modules from group: Capacitor Power Relay (20 of 20) + Modules from group: Power Diagnostic System (23 of 23) + Modules from group: Reactor Control Unit (22 of 22) + Modules named like: Flux Coil (12 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + # We default this to None as there are times when the source attribute doesn't exist (for example, Cap Power Relay). + # It will return 0 as it doesn't exist, which would nullify whatever the target attribute is + fit.ship.multiplyItemAttr('shieldCapacity', module.getModifiedItemAttr('shieldCapacityMultiplier', None)) + + +class Effect58(BaseEffect): + """ + capacitorCapacityMultiply + + Used by: + Modules from group: Capacitor Flux Coil (6 of 6) + Modules from group: Capacitor Power Relay (20 of 20) + Modules from group: Power Diagnostic System (23 of 23) + Modules from group: Propulsion Module (68 of 133) + Modules from group: Reactor Control Unit (22 of 22) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + # We default this to None as there are times when the source attribute doesn't exist (for example, Cap Power Relay). + # It will return 0 as it doesn't exist, which would nullify whatever the target attribute is + fit.ship.multiplyItemAttr('capacitorCapacity', module.getModifiedItemAttr('capacitorCapacityMultiplier', None)) + + +class Effect59(BaseEffect): + """ + cargoCapacityMultiply + + Used by: + Modules from group: Expanded Cargohold (7 of 7) + Modules from group: Overdrive Injector System (7 of 7) + Modules from group: Reinforced Bulkhead (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('capacity', module.getModifiedItemAttr('cargoCapacityMultiplier')) + + +class Effect60(BaseEffect): + """ + structureHPMultiply + + Used by: + Modules from group: Nanofiber Internal Structure (7 of 7) + Modules from group: Reinforced Bulkhead (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('hp', module.getModifiedItemAttr('structureHPMultiplier')) + + +class Effect61(BaseEffect): + """ + agilityBonus + + Used by: + Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('agility', src.getModifiedItemAttr('agilityBonusAdd')) + + +class Effect63(BaseEffect): + """ + armorHPMultiply + + Used by: + Modules from group: Armor Coating (202 of 202) + Modules from group: Armor Plating Energized (187 of 187) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('armorHP', module.getModifiedItemAttr('armorHPMultiplier')) + + +class Effect67(BaseEffect): + """ + miningLaser + + Used by: + Modules from group: Frequency Mining Laser (3 of 3) + Modules from group: Mining Laser (15 of 15) + Modules from group: Strip Miner (5 of 5) + Module: Citizen Miner + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + # Set reload time to 1 second + module.reloadTime = 1000 + + +class Effect89(BaseEffect): + """ + projectileWeaponSpeedMultiply + + Used by: + Modules from group: Gyrostabilizer (14 of 14) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect91(BaseEffect): + """ + energyWeaponDamageMultiply + + Used by: + Modules from group: Heat Sink (19 of 19) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Energy Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect92(BaseEffect): + """ + projectileWeaponDamageMultiply + + Used by: + Modules from group: Gyrostabilizer (14 of 14) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect93(BaseEffect): + """ + hybridWeaponDamageMultiply + + Used by: + Modules from group: Magnetic Field Stabilizer (15 of 15) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect95(BaseEffect): + """ + energyWeaponSpeedMultiply + + Used by: + Modules from group: Heat Sink (19 of 19) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Energy Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect96(BaseEffect): + """ + hybridWeaponSpeedMultiply + + Used by: + Modules from group: Magnetic Field Stabilizer (15 of 15) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect101(BaseEffect): + """ + useMissiles + + Used by: + Modules from group: Missile Launcher Heavy (12 of 12) + Modules from group: Missile Launcher Rocket (15 of 15) + Modules named like: Launcher (154 of 154) + Structure Modules named like: Standup Launcher (7 of 7) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, src, context): + # Set reload time to 10 seconds + src.reloadTime = 10000 + + if 'projected' in context: + if src.item.group.name == 'Missile Launcher Bomb': + # Bomb Launcher Cooldown Timer + moduleReactivationDelay = src.getModifiedItemAttr('moduleReactivationDelay') + speed = src.getModifiedItemAttr('speed') + + # Void and Focused Void Bombs + neutAmount = src.getModifiedChargeAttr('energyNeutralizerAmount') + + if moduleReactivationDelay and neutAmount and speed: + fit.addDrain(src, speed + moduleReactivationDelay, neutAmount, 0) + + # Lockbreaker Bombs + ecmStrengthBonus = src.getModifiedChargeAttr('scan{0}StrengthBonus'.format(fit.scanType)) + + if ecmStrengthBonus: + strModifier = 1 - ecmStrengthBonus / fit.scanStrength + fit.ecmProjectedStr *= strModifier + + +class Effect118(BaseEffect): + """ + electronicAttributeModifyOnline + + Used by: + Modules from group: Automated Targeting System (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('maxLockedTargets', module.getModifiedItemAttr('maxLockedTargetsBonus')) + + +class Effect157(BaseEffect): + """ + largeHybridTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringLargeHybridTurret + + Used by: + Implants named like: Zainou 'Deadeye' Large Hybrid Turret LH (6 of 6) + Skill: Large Hybrid Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect159(BaseEffect): + """ + mediumEnergyTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringMediumEnergyTurret + + Used by: + Implants named like: Inherent Implants 'Lancer' Medium Energy Turret ME (6 of 6) + Skill: Medium Energy Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect160(BaseEffect): + """ + mediumHybridTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringMediumHybridTurret + + Used by: + Implants named like: Zainou 'Deadeye' Medium Hybrid Turret MH (6 of 6) + Skill: Medium Hybrid Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect161(BaseEffect): + """ + mediumProjectileTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringMediumProjectileTurret + + Used by: + Implants named like: Eifyr and Co. 'Gunslinger' Medium Projectile Turret MP (6 of 6) + Skill: Medium Projectile Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect162(BaseEffect): + """ + largeEnergyTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringLargeEnergyTurret + + Used by: + Implants named like: Inherent Implants 'Lancer' Large Energy Turret LE (6 of 6) + Implant: Pashan's Turret Handling Mindlink + Skill: Large Energy Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect172(BaseEffect): + """ + smallEnergyTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringSmallEnergyTurret + + Used by: + Implants named like: Inherent Implants 'Lancer' Small Energy Turret SE (6 of 6) + Skill: Small Energy Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect173(BaseEffect): + """ + smallHybridTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringSmallHybridTurret + + Used by: + Implants named like: Zainou 'Deadeye' Small Hybrid Turret SH (6 of 6) + Skill: Small Hybrid Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect174(BaseEffect): + """ + smallProjectileTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringSmallProjectileTurret + + Used by: + Implants named like: Eifyr and Co. 'Gunslinger' Small Projectile Turret SP (6 of 6) + Skill: Small Projectile Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect212(BaseEffect): + """ + sensorUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringSensorUpgrades + + Used by: + Implants named like: Zainou 'Gypsy' Electronics Upgrades EU (6 of 6) + Modules named like: Liquid Cooled Electronics (8 of 8) + Skill: Electronics Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Electronics Upgrades'), + 'cpu', container.getModifiedItemAttr('cpuNeedBonus') * level) + + +class Effect214(BaseEffect): + """ + targetingMaxTargetBonusModAddMaxLockedTargetsLocationChar + + Used by: + Skills named like: Target Management (2 of 2) + """ + + type = 'passive', 'structure' + + @staticmethod + def handler(fit, skill, context): + amount = skill.getModifiedItemAttr('maxTargetBonus') * skill.level + fit.extraAttributes.increase('maxTargetsLockedFromSkills', amount) + + +class Effect223(BaseEffect): + """ + navigationVelocityBonusPostPercentMaxVelocityLocationShip + + Used by: + Implant: Low-grade Snake Alpha + Implant: Mid-grade Snake Alpha + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.boostItemAttr('maxVelocity', implant.getModifiedItemAttr('velocityBonus')) + + +class Effect227(BaseEffect): + """ + accerationControlCapNeedBonusPostPercentCapacitorNeedLocationShipGroupAfterburner + + Used by: + Modules named like: Dynamic Fuel Valve (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus')) + + +class Effect230(BaseEffect): + """ + afterburnerDurationBonusPostPercentDurationLocationShipModulesRequiringAfterburner + + Used by: + Implants named like: Eifyr and Co. 'Rogue' Afterburner AB (6 of 6) + Implant: Zor's Custom Navigation Link + Skill: Afterburner + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'duration', container.getModifiedItemAttr('durationBonus') * level) + + +class Effect235(BaseEffect): + """ + warpdriveoperationWarpCapacitorNeedBonusPostPercentWarpCapacitorNeedLocationShip + + Used by: + Implants named like: Eifyr and Co. 'Rogue' Warp Drive Operation WD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.boostItemAttr('warpCapacitorNeed', implant.getModifiedItemAttr('warpCapacitorNeedBonus')) + + +class Effect242(BaseEffect): + """ + accerationControlSpeedFBonusPostPercentSpeedFactorLocationShipGroupAfterburner + + Used by: + Implants named like: Eifyr and Co. 'Rogue' Acceleration Control AC (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'speedFactor', implant.getModifiedItemAttr('speedFBonus')) + + +class Effect244(BaseEffect): + """ + highSpeedManuveringCapacitorNeedMultiplierPostPercentCapacitorNeedLocationShipModulesRequiringHighSpeedManuvering + + Used by: + Implants named like: Eifyr and Co. 'Rogue' High Speed Maneuvering HS (6 of 6) + Skill: High Speed Maneuvering + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect271(BaseEffect): + """ + hullUpgradesArmorHpBonusPostPercentHpLocationShip + + Used by: + Implants named like: grade Slave (15 of 18) + Modules named like: Trimark Armor Pump (8 of 8) + Implant: Low-grade Snake Epsilon + Implant: Mid-grade Snake Epsilon + Skill: Hull Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('armorHP', (container.getModifiedItemAttr('armorHpBonus') or 0) * level) + + +class Effect272(BaseEffect): + """ + repairSystemsDurationBonusPostPercentDurationLocationShipModulesRequiringRepairSystems + + Used by: + Implants named like: Inherent Implants 'Noble' Repair Systems RS (6 of 6) + Modules named like: Nanobot Accelerator (8 of 8) + Implant: Numon Family Heirloom + Skill: Repair Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'duration', container.getModifiedItemAttr('durationSkillBonus') * level) + + +class Effect273(BaseEffect): + """ + shieldUpgradesPowerNeedBonusPostPercentPowerLocationShipModulesRequiringShieldUpgrades + + Used by: + Implants named like: Zainou 'Gnome' Shield Upgrades SU (6 of 6) + Modules named like: Core Defense Charge Economizer (8 of 8) + Skill: Shield Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Upgrades'), + 'power', container.getModifiedItemAttr('powerNeedBonus') * level) + + +class Effect277(BaseEffect): + """ + tacticalshieldManipulationSkillBoostUniformityBonus + + Used by: + Skill: Tactical Shield Manipulation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.ship.increaseItemAttr('shieldUniformity', skill.getModifiedItemAttr('uniformityBonus') * skill.level) + + +class Effect279(BaseEffect): + """ + shieldEmmisionSystemsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringShieldEmmisionSystems + + Used by: + Implants named like: Zainou 'Gnome' Shield Emission Systems SE (6 of 6) + Skill: Shield Emission Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect287(BaseEffect): + """ + controlledBurstsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringGunnery + + Used by: + Implants named like: Inherent Implants 'Lancer' Controlled Bursts CB (6 of 6) + Skill: Controlled Bursts + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect290(BaseEffect): + """ + sharpshooterRangeSkillBonusPostPercentMaxRangeLocationShipModulesRequiringGunnery + + Used by: + Implants named like: Frentix Booster (4 of 4) + Implants named like: Zainou 'Deadeye' Sharpshooter ST (6 of 6) + Skill: Sharpshooter + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', container.getModifiedItemAttr('rangeSkillBonus') * level) + + +class Effect298(BaseEffect): + """ + surgicalStrikeFalloffBonusPostPercentFalloffLocationShipModulesRequiringGunnery + + Used by: + Implants named like: Sooth Sayer Booster (4 of 4) + Implants named like: Zainou 'Deadeye' Trajectory Analysis TA (6 of 6) + Skill: Trajectory Analysis + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', container.getModifiedItemAttr('falloffBonus') * level) + + +class Effect315(BaseEffect): + """ + dronesSkillBoostMaxActiveDroneBonus + + Used by: + Skill: Drones + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + amount = skill.getModifiedItemAttr('maxActiveDroneBonus') * skill.level + fit.extraAttributes.increase('maxActiveDrones', amount) + + +class Effect391(BaseEffect): + """ + astrogeologyMiningAmountBonusPostPercentMiningAmountLocationShipModulesRequiringMining + + Used by: + Implants named like: Inherent Implants 'Highwall' Mining MX (3 of 3) + Implant: Michi's Excavation Augmentor + Skill: Astrogeology + Skill: Mining + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'miningAmount', container.getModifiedItemAttr('miningAmountBonus') * level) + + +class Effect392(BaseEffect): + """ + mechanicHullHpBonusPostPercentHpShip + + Used by: + Implants named like: Inherent Implants 'Noble' Mechanic MC (6 of 6) + Modules named like: Transverse Bulkhead (8 of 8) + Skill: Mechanics + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('hp', container.getModifiedItemAttr('hullHpBonus') * level) + + +class Effect394(BaseEffect): + """ + navigationVelocityBonusPostPercentMaxVelocityShip + + Used by: + Modules from group: Rig Anchor (4 of 4) + Implants named like: Agency 'Overclocker' SB Dose (4 of 4) + Implants named like: grade Snake (16 of 18) + Modules named like: Auxiliary Thrusters (8 of 8) + Implant: Quafe Zero + Skill: Navigation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + amount = container.getModifiedItemAttr('velocityBonus') or 0 + fit.ship.boostItemAttr('maxVelocity', amount * level, + stackingPenalties='skill' not in context and 'implant' not in context and 'booster' not in context) + + +class Effect395(BaseEffect): + """ + evasiveManeuveringAgilityBonusPostPercentAgilityShip + + Used by: + Modules from group: Rig Anchor (4 of 4) + Implants named like: Eifyr and Co. 'Rogue' Evasive Maneuvering EM (6 of 6) + Implants named like: grade Nomad (10 of 12) + Modules named like: Low Friction Nozzle Joints (8 of 8) + Implant: Genolution Core Augmentation CA-4 + Skill: Evasive Maneuvering + Skill: Spaceship Command + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('agility', container.getModifiedItemAttr('agilityBonus') * level, + stackingPenalties='skill' not in context and 'implant' not in context) + + +class Effect396(BaseEffect): + """ + energyGridUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringEnergyGridUpgrades + + Used by: + Implants named like: Inherent Implants 'Squire' Energy Grid Upgrades EU (6 of 6) + Modules named like: Powergrid Subroutine Maximizer (8 of 8) + Skill: Energy Grid Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Energy Grid Upgrades'), + 'cpu', container.getModifiedItemAttr('cpuNeedBonus') * level) + + +class Effect397(BaseEffect): + """ + electronicsCpuOutputBonusPostPercentCpuOutputLocationShipGroupComputer + + Used by: + Implants named like: Zainou 'Gypsy' CPU Management EE (6 of 6) + Modules named like: Processor Overclocking Unit (8 of 8) + Subsystems named like: Core Electronic Efficiency Gate (2 of 2) + Implant: Genolution Core Augmentation CA-2 + Skill: CPU Management + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('cpuOutput', container.getModifiedItemAttr('cpuOutputBonus2') * level) + + +class Effect408(BaseEffect): + """ + largeProjectileTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringLargeProjectileTurret + + Used by: + Implants named like: Eifyr and Co. 'Gunslinger' Large Projectile Turret LP (6 of 6) + Skill: Large Projectile Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect414(BaseEffect): + """ + gunneryTurretSpeeBonusPostPercentSpeedLocationShipModulesRequiringGunnery + + Used by: + Implants named like: Inherent Implants 'Lancer' Gunnery RF (6 of 6) + Implant: Pashan's Turret Customization Mindlink + Skill: Gunnery + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'speed', container.getModifiedItemAttr('turretSpeeBonus') * level) + + +class Effect446(BaseEffect): + """ + shieldManagementShieldCapacityBonusPostPercentCapacityLocationShipGroupShield + + Used by: + Implants named like: Zainou 'Gnome' Shield Management SM (6 of 6) + Modules named like: Core Defense Field Extender (8 of 8) + Implant: Genolution Core Augmentation CA-3 + Implant: Sansha Modified 'Gnome' Implant + Skill: Shield Management + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('shieldCapacity', container.getModifiedItemAttr('shieldCapacityBonus') * level) + + +class Effect485(BaseEffect): + """ + energysystemsoperationCapRechargeBonusPostPercentRechargeRateLocationShipGroupCapacitor + + Used by: + Implants named like: Inherent Implants 'Squire' Capacitor Systems Operation EO (6 of 6) + Modules named like: Capacitor Control Circuit (8 of 8) + Implant: Genolution Core Augmentation CA-2 + Skill: Capacitor Systems Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('rechargeRate', container.getModifiedItemAttr('capRechargeBonus') * level) + + +class Effect486(BaseEffect): + """ + shieldOperationRechargeratebonusPostPercentRechargeRateLocationShipGroupShield + + Used by: + Implants named like: Zainou 'Gnome' Shield Operation SP (6 of 6) + Modules named like: Core Defense Field Purger (8 of 8) + Implant: Sansha Modified 'Gnome' Implant + Skill: Shield Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('shieldRechargeRate', container.getModifiedItemAttr('rechargeratebonus') * level) + + +class Effect490(BaseEffect): + """ + engineeringPowerEngineeringOutputBonusPostPercentPowerOutputLocationShipGroupPowerCore + + Used by: + Implants named like: Inherent Implants 'Squire' Power Grid Management EG (6 of 6) + Modules named like: Ancillary Current Router (8 of 8) + Subsystems named like: Core Augmented Reactor (4 of 4) + Implant: Genolution Core Augmentation CA-1 + Skill: Power Grid Management + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('powerOutput', container.getModifiedItemAttr('powerEngineeringOutputBonus') * level) + + +class Effect494(BaseEffect): + """ + warpDriveOperationWarpCapacitorNeedBonusPostPercentWarpCapacitorNeedLocationShipGroupPropulsion + + Used by: + Modules named like: Warp Core Optimizer (8 of 8) + Skill: Warp Drive Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('warpCapacitorNeed', container.getModifiedItemAttr('warpCapacitorNeedBonus') * level, + stackingPenalties='skill' not in context) + + +class Effect504(BaseEffect): + """ + scoutDroneOperationDroneRangeBonusModAddDroneControlDistanceChar + + Used by: + Modules named like: Drone Control Range Augmentor (8 of 8) + Skills named like: Drone Avionics (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + amount = container.getModifiedItemAttr('droneRangeBonus') * level + fit.extraAttributes.increase('droneControlRange', amount) + + +class Effect506(BaseEffect): + """ + fuelConservationCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringAfterburner + + Used by: + Skill: Afterburner + Skill: Fuel Conservation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'capacitorNeed', skill.getModifiedItemAttr('capNeedBonus') * skill.level) + + +class Effect507(BaseEffect): + """ + longRangeTargetingMaxTargetRangeBonusPostPercentMaxTargetRangeLocationShipGroupElectronic + + Used by: + Implants named like: Zainou 'Gypsy' Long Range Targeting LT (6 of 6) + Skill: Long Range Targeting + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('maxTargetRange', container.getModifiedItemAttr('maxTargetRangeBonus') * level) + + +class Effect508(BaseEffect): + """ + shipPDmgBonusMF + + Used by: + Ship: Cheetah + Ship: Freki + Ship: Republic Fleet Firetail + Ship: Rifter + Ship: Slasher + Ship: Stiletto + Ship: Wolf + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect511(BaseEffect): + """ + shipEnergyTCapNeedBonusAF + + Used by: + Ship: Crusader + Ship: Executioner + Ship: Gold Magnate + Ship: Punisher + Ship: Retribution + Ship: Silver Magnate + Ship: Tormentor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect512(BaseEffect): + """ + shipSHTDmgBonusGF + + Used by: + Variations of ship: Incursus (3 of 3) + Ship: Atron + Ship: Federation Navy Comet + Ship: Helios + Ship: Pacifier + Ship: Taranis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect514(BaseEffect): + """ + shipSETDmgBonusAF + + Used by: + Ship: Executioner + Ship: Gold Magnate + Ship: Silver Magnate + Ship: Tormentor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect516(BaseEffect): + """ + shipTCapNeedBonusAC + + Used by: + Ship: Devoter + Ship: Omen + Ship: Zealot + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect521(BaseEffect): + """ + shipHRangeBonusCC + + Used by: + Ship: Eagle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect527(BaseEffect): + """ + shipVelocityBonusMI + + Used by: + Variations of ship: Mammoth (2 of 2) + Ship: Hoarder + Ship: Prowler + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('shipBonusMI'), skill='Minmatar Industrial') + + +class Effect529(BaseEffect): + """ + shipCargoBonusAI + + Used by: + Variations of ship: Sigil (2 of 2) + Ship: Bestower + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('shipBonusAI'), skill='Amarr Industrial') + + +class Effect536(BaseEffect): + """ + cpuMultiplierPostMulCpuOutputShip + + Used by: + Modules from group: CPU Enhancer (19 of 19) + Variations of structure module: Standup Co-Processor Array I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('cpuOutput', module.getModifiedItemAttr('cpuMultiplier')) + + +class Effect542(BaseEffect): + """ + shipCapNeedBonusAB + + Used by: + Variations of ship: Armageddon (3 of 5) + Ship: Apocalypse Imperial Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect549(BaseEffect): + """ + shipPTDmgBonusMB + + Used by: + Variations of ship: Tempest (3 of 4) + Ship: Machariel + Ship: Panther + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect550(BaseEffect): + """ + shipHTDmgBonusGB + + Used by: + Ship: Dominix Navy Issue + Ship: Hyperion + Ship: Kronos + Ship: Marshal + Ship: Megathron Federate Issue + Ship: Sin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGB'), + skill='Gallente Battleship') + + +class Effect553(BaseEffect): + """ + shipHTTrackingBonusGB + + Used by: + Ship: Vindicator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGB'), skill='Gallente Battleship') + + +class Effect562(BaseEffect): + """ + shipHTDmgBonusfixedGC + + Used by: + Ship: Adrestia + Ship: Arazu + Ship: Deimos + Ship: Enforcer + Ship: Exequror Navy Issue + Ship: Guardian-Vexor + Ship: Thorax + Ship: Vexor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect581(BaseEffect): + """ + weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringGunnery + + Used by: + Implants named like: Zainou 'Gnome' Weapon Upgrades WU (6 of 6) + Skill: Weapon Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'cpu', container.getModifiedItemAttr('cpuNeedBonus') * level) + + +class Effect582(BaseEffect): + """ + rapidFiringRofBonusPostPercentSpeedLocationShipModulesRequiringGunnery + + Used by: + Skill: Rapid Firing + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'speed', skill.getModifiedItemAttr('rofBonus') * skill.level) + + +class Effect584(BaseEffect): + """ + surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringGunnery + + Used by: + Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) + Implants named like: Eifyr and Co. 'Gunslinger' Surgical Strike SS (6 of 6) + Implant: Standard Cerebral Accelerator + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'damageMultiplier', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect587(BaseEffect): + """ + surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupEnergyWeapon + + Used by: + Skill: Surgical Strike + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect588(BaseEffect): + """ + surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupProjectileWeapon + + Used by: + Skill: Surgical Strike + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect589(BaseEffect): + """ + surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupHybridWeapon + + Used by: + Skill: Surgical Strike + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect590(BaseEffect): + """ + energyPulseWeaponsDurationBonusPostPercentDurationLocationShipModulesRequiringEnergyPulseWeapons + + Used by: + Implants named like: Inherent Implants 'Squire' Energy Pulse Weapons EP (6 of 6) + Skill: Energy Pulse Weapons + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Energy Pulse Weapons'), + 'duration', container.getModifiedItemAttr('durationBonus') * level) + + +class Effect596(BaseEffect): + """ + ammoInfluenceRange + + Used by: + Items from category: Charge (587 of 949) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.multiplyItemAttr('maxRange', module.getModifiedChargeAttr('weaponRangeMultiplier')) + + +class Effect598(BaseEffect): + """ + ammoSpeedMultiplier + + Used by: + Charges from group: Festival Charges (26 of 26) + Charges from group: Interdiction Probe (2 of 2) + Items from market group: Special Edition Assets > Special Edition Festival Assets (30 of 33) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.multiplyItemAttr('speed', module.getModifiedChargeAttr('speedMultiplier') or 1) + + +class Effect599(BaseEffect): + """ + ammoFallofMultiplier + + Used by: + Charges from group: Advanced Artillery Ammo (8 of 8) + Charges from group: Advanced Autocannon Ammo (8 of 8) + Charges from group: Advanced Beam Laser Crystal (8 of 8) + Charges from group: Advanced Blaster Charge (8 of 8) + Charges from group: Advanced Pulse Laser Crystal (8 of 8) + Charges from group: Advanced Railgun Charge (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.multiplyItemAttr('falloff', module.getModifiedChargeAttr('fallofMultiplier') or 1) + + +class Effect600(BaseEffect): + """ + ammoTrackingMultiplier + + Used by: + Items from category: Charge (182 of 949) + Charges from group: Projectile Ammo (128 of 128) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.multiplyItemAttr('trackingSpeed', module.getModifiedChargeAttr('trackingSpeedMultiplier')) + + +class Effect602(BaseEffect): + """ + shipPTurretSpeedBonusMC + + Used by: + Variations of ship: Rupture (3 of 3) + Variations of ship: Stabber (3 of 3) + Ship: Enforcer + Ship: Huginn + Ship: Scythe Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + + +class Effect604(BaseEffect): + """ + shipPTspeedBonusMB2 + + Used by: + Variations of ship: Tempest (4 of 4) + Ship: Maelstrom + Ship: Marshal + Ship: Panther + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusMB2'), skill='Minmatar Battleship') + + +class Effect607(BaseEffect): + """ + cloaking + + Used by: + Modules from group: Cloaking Device (10 of 14) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, module, context): + # Set flag which is used to determine if ship is cloaked or not + # This is used to apply cloak-only bonuses, like Black Ops' speed bonus + # Doesn't apply to covops cloaks + fit.extraAttributes['cloaked'] = True + # Apply speed penalty + fit.ship.multiplyItemAttr('maxVelocity', module.getModifiedItemAttr('maxVelocityModifier')) + + +class Effect623(BaseEffect): + """ + miningDroneOperationMiningAmountBonusPostPercentMiningDroneAmountPercentChar + + Used by: + Modules named like: Drone Mining Augmentor (8 of 8) + Skill: Mining Drone Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', + container.getModifiedItemAttr('miningAmountBonus') * level) + + +class Effect627(BaseEffect): + """ + powerIncrease + + Used by: + Modules from group: Auxiliary Power Core (5 of 5) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('powerOutput', module.getModifiedItemAttr('powerIncrease')) + + +class Effect657(BaseEffect): + """ + agilityMultiplierEffect + + Used by: + Modules from group: Inertial Stabilizer (7 of 7) + Modules from group: Nanofiber Internal Structure (7 of 7) + Modules from group: Reinforced Bulkhead (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('agility', + module.getModifiedItemAttr('agilityMultiplier'), + stackingPenalties=True) + + +class Effect660(BaseEffect): + """ + missileEMDmgBonus + + Used by: + Skills named like: Missiles (5 of 7) + Skill: Rockets + Skill: Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), + 'emDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect661(BaseEffect): + """ + missileExplosiveDmgBonus + + Used by: + Skills named like: Missiles (5 of 7) + Skill: Rockets + Skill: Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), + 'explosiveDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect662(BaseEffect): + """ + missileThermalDmgBonus + + Used by: + Skills named like: Missiles (5 of 7) + Skill: Rockets + Skill: Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), + 'thermalDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect668(BaseEffect): + """ + missileKineticDmgBonus2 + + Used by: + Skills named like: Missiles (5 of 7) + Skill: Rockets + Skill: Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), + 'kineticDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect670(BaseEffect): + """ + antiWarpScramblingPassive + + Used by: + Modules from group: Warp Core Stabilizer (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('warpScrambleStatus', module.getModifiedItemAttr('warpScrambleStrength')) + + +class Effect675(BaseEffect): + """ + weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringEnergyPulseWeapons + + Used by: + Skill: Weapon Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Energy Pulse Weapons'), + 'cpu', skill.getModifiedItemAttr('cpuNeedBonus') * skill.level) + + +class Effect677(BaseEffect): + """ + weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringMissileLauncherOperation + + Used by: + Implants named like: Zainou 'Gnome' Launcher CPU Efficiency LE (6 of 6) + Skill: Weapon Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'cpu', container.getModifiedItemAttr('cpuNeedBonus') * level) + + +class Effect699(BaseEffect): + """ + signatureAnalysisScanResolutionBonusPostPercentScanResolutionShip + + Used by: + Implants named like: Zainou 'Gypsy' Signature Analysis SA (6 of 6) + Modules named like: Targeting System Subcontroller (8 of 8) + Implant: Quafe Zero + Skill: Signature Analysis + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalized = False if 'skill' in context or 'implant' in context or 'booster' in context else True + fit.ship.boostItemAttr('scanResolution', container.getModifiedItemAttr('scanResolutionBonus') * level, + stackingPenalties=penalized) + + +class Effect706(BaseEffect): + """ + covertOpsWarpResistance + + Used by: + Ships from group: Covert Ops (5 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpFactor', src.getModifiedItemAttr('eliteBonusCovertOps1'), skill='Covert Ops') + + +class Effect726(BaseEffect): + """ + shipBonusCargo2GI + + Used by: + Variations of ship: Miasmos (3 of 4) + Variations of ship: Nereus (2 of 2) + Ship: Iteron Mark V + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + # TODO: investigate if we can live without such ifs or hardcoding + # Viator doesn't have GI bonus + if 'shipBonusGI' in fit.ship.item.attributes: + bonusAttr = 'shipBonusGI' + else: + bonusAttr = 'shipBonusGI2' + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr(bonusAttr), skill='Gallente Industrial') + + +class Effect727(BaseEffect): + """ + shipBonusCargoCI + + Used by: + Variations of ship: Badger (2 of 2) + Ship: Tayra + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('shipBonusCI'), skill='Caldari Industrial') + + +class Effect728(BaseEffect): + """ + shipBonusCargoMI + + Used by: + Variations of ship: Wreathe (2 of 2) + Ship: Mammoth + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('shipBonusMI'), skill='Minmatar Industrial') + + +class Effect729(BaseEffect): + """ + shipBonusVelocityGI + + Used by: + Variations of ship: Epithal (2 of 2) + Variations of ship: Miasmos (4 of 4) + Ship: Iteron Mark V + Ship: Kryos + Ship: Viator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + # TODO: investigate if we can live without such ifs or hardcoding + # Viator doesn't have GI bonus + if 'shipBonusGI' in fit.ship.item.attributes: + bonusAttr = 'shipBonusGI' + else: + bonusAttr = 'shipBonusGI2' + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr(bonusAttr), skill='Gallente Industrial') + + +class Effect730(BaseEffect): + """ + shipBonusVelocityCI + + Used by: + Variations of ship: Tayra (2 of 2) + Ship: Crane + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('shipBonusCI'), skill='Caldari Industrial') + + +class Effect732(BaseEffect): + """ + shipVelocityBonusAI + + Used by: + Variations of ship: Bestower (2 of 2) + Ship: Prorator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('shipBonusAI'), skill='Amarr Industrial') + + +class Effect736(BaseEffect): + """ + shipBonusCapCapAB + + Used by: + Ship: Apocalypse Imperial Issue + Ship: Paladin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacitorCapacity', ship.getModifiedItemAttr('shipBonusAB2'), skill='Amarr Battleship') + + +class Effect744(BaseEffect): + """ + surveyScanspeedBonusPostPercentDurationLocationShipModulesRequiringElectronics + + Used by: + Modules named like: Signal Focusing Kit (8 of 8) + Skill: Survey + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('CPU Management'), + 'duration', container.getModifiedItemAttr('scanspeedBonus') * level) + + +class Effect754(BaseEffect): + """ + shipHybridDamageBonusCF + + Used by: + Ship: Raptor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect757(BaseEffect): + """ + shipETDamageAF + + Used by: + Ship: Crucifier Navy Issue + Ship: Crusader + Ship: Imperial Navy Slicer + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect760(BaseEffect): + """ + shipBonusSmallMissileRoFCF2 + + Used by: + Ship: Buzzard + Ship: Hawk + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect763(BaseEffect): + """ + missileDMGBonus + + Used by: + Modules from group: Ballistic Control system (22 of 22) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + for dmgType in ('em', 'kinetic', 'explosive', 'thermal'): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + '%sDamage' % dmgType, + container.getModifiedItemAttr('missileDamageMultiplierBonus'), + stackingPenalties=True) + + +class Effect784(BaseEffect): + """ + missileBombardmentMaxFlightTimeBonusPostPercentExplosionDelayOwnerCharModulesRequiringMissileLauncherOperation + + Used by: + Implants named like: Zainou 'Deadeye' Missile Bombardment MB (6 of 6) + Modules named like: Rocket Fuel Cache Partition (8 of 8) + Implant: Antipharmakon Toxot + Skill: Missile Bombardment + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalized = False if 'skill' in context or 'implant' in context or 'booster' in context else True + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosionDelay', container.getModifiedItemAttr('maxFlightTimeBonus') * level, + stackingPenalties=penalized) + + +class Effect804(BaseEffect): + """ + ammoInfluenceCapNeed + + Used by: + Items from category: Charge (493 of 949) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + # Dirty hack to work around cap charges setting cap booster + # injection amount to zero + rawAttr = module.item.getAttribute('capacitorNeed') + if rawAttr is not None and rawAttr >= 0: + module.boostItemAttr('capacitorNeed', module.getModifiedChargeAttr('capNeedBonus') or 0) + + +class Effect836(BaseEffect): + """ + skillFreightBonus + + Used by: + Modules named like: Cargohold Optimization (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('capacity', module.getModifiedItemAttr('cargoCapacityBonus')) + + +class Effect848(BaseEffect): + """ + cloakingTargetingDelayBonusPostPercentCloakingTargetingDelayBonusForShipModulesRequiringCloaking + + Used by: + Skill: Cloaking + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Cloaking'), + 'cloakingTargetingDelay', + skill.getModifiedItemAttr('cloakingTargetingDelayBonus') * skill.level) + + +class Effect854(BaseEffect): + """ + cloakingScanResolutionMultiplier + + Used by: + Modules from group: Cloaking Device (12 of 14) + """ + + type = 'offline' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('scanResolution', + module.getModifiedItemAttr('scanResolutionMultiplier'), + stackingPenalties=True, penaltyGroup='cloakingScanResolutionMultiplier') + + +class Effect856(BaseEffect): + """ + warpSkillSpeed + + Used by: + Implants named like: Eifyr and Co. 'Rogue' Warp Drive Speed WS (6 of 6) + Implants named like: grade Ascendancy (10 of 12) + Modules named like: Hyperspatial Velocity Optimizer (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + penalized = False if 'skill' in context or 'implant' in context else True + fit.ship.boostItemAttr('baseWarpSpeed', container.getModifiedItemAttr('WarpSBonus'), + stackingPenalties=penalized) + + +class Effect874(BaseEffect): + """ + shipProjectileOptimalBonuseMF2 + + Used by: + Ship: Cheetah + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect882(BaseEffect): + """ + shipHybridRangeBonusCF2 + + Used by: + Ship: Harpy + Ship: Raptor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect887(BaseEffect): + """ + shipETspeedBonusAB2 + + Used by: + Variations of ship: Armageddon (3 of 5) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusAB2'), skill='Amarr Battleship') + + +class Effect889(BaseEffect): + """ + missileLauncherSpeedMultiplier + + Used by: + Modules from group: Ballistic Control system (22 of 22) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect891(BaseEffect): + """ + shipCruiseMissileVelocityBonusCB3 + + Used by: + Variations of ship: Raven (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCB3'), skill='Caldari Battleship') + + +class Effect892(BaseEffect): + """ + shipTorpedosVelocityBonusCB3 + + Used by: + Variations of ship: Raven (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCB3'), skill='Caldari Battleship') + + +class Effect896(BaseEffect): + """ + covertOpsCpuBonus1 + + Used by: + Ships from group: Stealth Bomber (4 of 5) + Subsystems named like: Defensive Covert Reconfiguration (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cloaking Device', + 'cpu', container.getModifiedItemAttr('cloakingCpuNeedBonus')) + + +class Effect898(BaseEffect): + """ + shipMissileKineticDamageCF + + Used by: + Ship: Buzzard + Ship: Condor + Ship: Hawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect899(BaseEffect): + """ + shipMissileKineticDamageCC + + Used by: + Ship: Cerberus + Ship: Onyx + Ship: Orthrus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect900(BaseEffect): + """ + shipDroneScoutThermalDamageGF2 + + Used by: + Ship: Helios + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Light Drone Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect907(BaseEffect): + """ + shipLaserRofAC2 + + Used by: + Ship: Omen + Ship: Zealot + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect909(BaseEffect): + """ + shipArmorHpAC2 + + Used by: + Ship: Augoror Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorHP', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect912(BaseEffect): + """ + shipMissileLauncherRofCC2 + + Used by: + Ship: Onyx + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect918(BaseEffect): + """ + shipDronesMaxGC2 + + Used by: + Ship: Guardian-Vexor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.extraAttributes.increase('maxActiveDrones', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect919(BaseEffect): + """ + shipHybridTrackingGC2 + + Used by: + Ship: Enforcer + Ship: Thorax + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect958(BaseEffect): + """ + shipArmorEmResistanceAC2 + + Used by: + Ship: Maller + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect959(BaseEffect): + """ + shipArmorExplosiveResistanceAC2 + + Used by: + Ship: Maller + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusAC2'), + skill='Amarr Cruiser') + + +class Effect960(BaseEffect): + """ + shipArmorKineticResistanceAC2 + + Used by: + Ship: Maller + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('shipBonusAC2'), + skill='Amarr Cruiser') + + +class Effect961(BaseEffect): + """ + shipArmorThermalResistanceAC2 + + Used by: + Ship: Maller + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('shipBonusAC2'), + skill='Amarr Cruiser') + + +class Effect968(BaseEffect): + """ + shipProjectileDmgMC2 + + Used by: + Variations of ship: Rupture (3 of 3) + Ship: Cynabal + Ship: Moracha + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect980(BaseEffect): + """ + cloakingWarpSafe + + Used by: + Modules named like: Covert Ops Cloaking Device II (2 of 2) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, ship, context): + fit.extraAttributes['cloaked'] = True + # TODO: Implement + + +class Effect989(BaseEffect): + """ + eliteBonusGunshipHybridOptimal1 + + Used by: + Ship: Enyo + Ship: Harpy + Ship: Ishkur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect991(BaseEffect): + """ + eliteBonusGunshipLaserOptimal1 + + Used by: + Ship: Retribution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect996(BaseEffect): + """ + eliteBonusGunshipHybridTracking2 + + Used by: + Ship: Enyo + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusGunship2'), + skill='Assault Frigates') + + +class Effect998(BaseEffect): + """ + eliteBonusGunshipProjectileFalloff2 + + Used by: + Ship: Wolf + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusGunship2'), skill='Assault Frigates') + + +class Effect999(BaseEffect): + """ + eliteBonusGunshipShieldBoost2 + + Used by: + Ship: Hawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('eliteBonusGunship2'), + skill='Assault Frigates') + + +class Effect1001(BaseEffect): + """ + eliteBonusGunshipCapRecharge2 + + Used by: + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('rechargeRate', ship.getModifiedItemAttr('eliteBonusGunship2'), skill='Assault Frigates') + + +class Effect1003(BaseEffect): + """ + selfT2SmallLaserPulseDamageBonus + + Used by: + Skill: Small Pulse Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Pulse Laser Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1004(BaseEffect): + """ + selfT2SmallLaserBeamDamageBonus + + Used by: + Skill: Small Beam Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Beam Laser Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1005(BaseEffect): + """ + selfT2SmallHybridBlasterDamageBonus + + Used by: + Skill: Small Blaster Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Blaster Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1006(BaseEffect): + """ + selfT2SmallHybridRailDamageBonus + + Used by: + Skill: Small Railgun Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Railgun Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1007(BaseEffect): + """ + selfT2SmallProjectileACDamageBonus + + Used by: + Skill: Small Autocannon Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Autocannon Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1008(BaseEffect): + """ + selfT2SmallProjectileArtyDamageBonus + + Used by: + Skill: Small Artillery Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Artillery Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1009(BaseEffect): + """ + selfT2MediumLaserPulseDamageBonus + + Used by: + Skill: Medium Pulse Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Pulse Laser Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1010(BaseEffect): + """ + selfT2MediumLaserBeamDamageBonus + + Used by: + Skill: Medium Beam Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Beam Laser Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1011(BaseEffect): + """ + selfT2MediumHybridBlasterDamageBonus + + Used by: + Skill: Medium Blaster Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Blaster Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1012(BaseEffect): + """ + selfT2MediumHybridRailDamageBonus + + Used by: + Skill: Medium Railgun Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Railgun Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1013(BaseEffect): + """ + selfT2MediumProjectileACDamageBonus + + Used by: + Skill: Medium Autocannon Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Autocannon Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1014(BaseEffect): + """ + selfT2MediumProjectileArtyDamageBonus + + Used by: + Skill: Medium Artillery Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Artillery Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1015(BaseEffect): + """ + selfT2LargeLaserPulseDamageBonus + + Used by: + Skill: Large Pulse Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Pulse Laser Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1016(BaseEffect): + """ + selfT2LargeLaserBeamDamageBonus + + Used by: + Skill: Large Beam Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Beam Laser Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1017(BaseEffect): + """ + selfT2LargeHybridBlasterDamageBonus + + Used by: + Skill: Large Blaster Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Blaster Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1018(BaseEffect): + """ + selfT2LargeHybridRailDamageBonus + + Used by: + Skill: Large Railgun Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Railgun Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1019(BaseEffect): + """ + selfT2LargeProjectileACDamageBonus + + Used by: + Skill: Large Autocannon Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Autocannon Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1020(BaseEffect): + """ + selfT2LargeProjectileArtyDamageBonus + + Used by: + Skill: Large Artillery Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Artillery Specialization'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1021(BaseEffect): + """ + eliteBonusGunshipHybridDmg2 + + Used by: + Ship: Harpy + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusGunship2'), + skill='Assault Frigates') + + +class Effect1024(BaseEffect): + """ + shipMissileHeavyVelocityBonusCC2 + + Used by: + Ship: Caracal + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect1025(BaseEffect): + """ + shipMissileLightVelocityBonusCC2 + + Used by: + Ship: Caracal + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect1030(BaseEffect): + """ + remoteArmorSystemsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringRemoteArmorSystems + + Used by: + Implants named like: Inherent Implants 'Noble' Remote Armor Repair Systems RA (6 of 6) + Modules named like: Remote Repair Augmentor (6 of 8) + Skill: Remote Armor Repair Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect1033(BaseEffect): + """ + eliteBonusLogisticRemoteArmorRepairCapNeed1 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('eliteBonusLogistics1'), skill='Logistics Cruisers') + + +class Effect1034(BaseEffect): + """ + eliteBonusLogisticRemoteArmorRepairCapNeed2 + + Used by: + Ship: Guardian + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('eliteBonusLogistics2'), skill='Logistics Cruisers') + + +class Effect1035(BaseEffect): + """ + eliteBonusLogisticShieldTransferCapNeed2 + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'capacitorNeed', + src.getModifiedItemAttr('eliteBonusLogistics2'), skill='Logistics Cruisers') + + +class Effect1036(BaseEffect): + """ + eliteBonusLogisticShieldTransferCapNeed1 + + Used by: + Ship: Basilisk + Ship: Etana + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'capacitorNeed', + src.getModifiedItemAttr('eliteBonusLogistics1'), skill='Logistics Cruisers') + + +class Effect1046(BaseEffect): + """ + shipRemoteArmorRangeGC1 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'maxRange', + src.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect1047(BaseEffect): + """ + shipRemoteArmorRangeAC2 + + Used by: + Ship: Guardian + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'maxRange', + src.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect1048(BaseEffect): + """ + shipShieldTransferRangeCC1 + + Used by: + Ship: Basilisk + Ship: Etana + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'maxRange', + src.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect1049(BaseEffect): + """ + shipShieldTransferRangeMC2 + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'maxRange', + src.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect1056(BaseEffect): + """ + eliteBonusHeavyGunshipHybridOptimal1 + + Used by: + Ship: Eagle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1057(BaseEffect): + """ + eliteBonusHeavyGunshipProjectileOptimal1 + + Used by: + Ship: Muninn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1058(BaseEffect): + """ + eliteBonusHeavyGunshipLaserOptimal1 + + Used by: + Ship: Zealot + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1060(BaseEffect): + """ + eliteBonusHeavyGunshipProjectileFallOff1 + + Used by: + Ship: Vagabond + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1061(BaseEffect): + """ + eliteBonusHeavyGunshipHybridDmg2 + + Used by: + Ship: Deimos + Ship: Eagle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect1062(BaseEffect): + """ + eliteBonusHeavyGunshipLaserDmg2 + + Used by: + Ship: Zealot + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect1063(BaseEffect): + """ + eliteBonusHeavyGunshipProjectileTracking2 + + Used by: + Ship: Muninn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect1080(BaseEffect): + """ + eliteBonusHeavyGunshipHybridFallOff1 + + Used by: + Ship: Deimos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1081(BaseEffect): + """ + eliteBonusHeavyGunshipHeavyMissileFlightTime1 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosionDelay', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1082(BaseEffect): + """ + eliteBonusHeavyGunshipLightMissileFlightTime1 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'explosionDelay', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1084(BaseEffect): + """ + eliteBonusHeavyGunshipDroneControlRange1 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.extraAttributes.increase('droneControlRange', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect1087(BaseEffect): + """ + eliteBonusHeavyGunshipProjectileDmg2 + + Used by: + Ship: Vagabond + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect1099(BaseEffect): + """ + shipProjectileTrackingMF2 + + Used by: + Variations of ship: Slasher (3 of 3) + Ship: Republic Fleet Firetail + Ship: Wolf + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect1176(BaseEffect): + """ + accerationControlSkillAb&MwdSpeedBoost + + Used by: + Implant: Zor's Custom Navigation Hyper-Link + Skill: Acceleration Control + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'speedFactor', container.getModifiedItemAttr('speedFBonus') * level) + + +class Effect1179(BaseEffect): + """ + eliteBonusGunshipLaserDamage2 + + Used by: + Ship: Retribution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusGunship2'), + skill='Assault Frigates') + + +class Effect1181(BaseEffect): + """ + eliteBonusLogisticEnergyTransferCapNeed1 + + Used by: + Ship: Guardian + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'capacitorNeed', ship.getModifiedItemAttr('eliteBonusLogistics1'), + skill='Logistics Cruisers') + + +class Effect1182(BaseEffect): + """ + shipEnergyTransferRange1 + + Used by: + Ship: Guardian + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'maxRange', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect1183(BaseEffect): + """ + eliteBonusLogisticEnergyTransferCapNeed2 + + Used by: + Ship: Basilisk + Ship: Etana + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'capacitorNeed', ship.getModifiedItemAttr('eliteBonusLogistics2'), + skill='Logistics Cruisers') + + +class Effect1184(BaseEffect): + """ + shipEnergyTransferRange2 + + Used by: + Ship: Basilisk + Ship: Etana + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'maxRange', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect1185(BaseEffect): + """ + structureStealthEmitterArraySigDecrease + + Used by: + Implants named like: X Instinct Booster (4 of 4) + Implants named like: grade Halo (15 of 18) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.boostItemAttr('signatureRadius', implant.getModifiedItemAttr('signatureRadiusBonus')) + + +class Effect1190(BaseEffect): + """ + iceHarvestCycleTimeModulesRequiringIceHarvesting + + Used by: + Implants named like: Inherent Implants 'Yeti' Ice Harvesting IH (3 of 3) + Module: Medium Ice Harvester Accelerator I + Skill: Ice Harvesting + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), + 'duration', container.getModifiedItemAttr('iceHarvestCycleBonus') * level) + + +class Effect1200(BaseEffect): + """ + miningInfoMultiplier + + Used by: + Charges from group: Mining Crystal (40 of 40) + Charges named like: Mining Crystal (42 of 42) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.multiplyItemAttr('specialtyMiningAmount', + module.getModifiedChargeAttr('specialisationAsteroidYieldMultiplier')) + # module.multiplyItemAttr('miningAmount', module.getModifiedChargeAttr('specialisationAsteroidYieldMultiplier')) + + +class Effect1212(BaseEffect): + """ + crystalMiningamountInfo2 + + Used by: + Modules from group: Frequency Mining Laser (3 of 3) + """ + + runTime = 'late' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.preAssignItemAttr('specialtyMiningAmount', module.getModifiedItemAttr('miningAmount')) + + +class Effect1215(BaseEffect): + """ + shipEnergyDrainAmountAF1 + + Used by: + Ship: Caedes + Ship: Cruor + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect1218(BaseEffect): + """ + shipBonusPirateSmallHybridDmg + + Used by: + Ship: Daredevil + Ship: Hecate + Ship: Sunesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1219(BaseEffect): + """ + shipEnergyVampireTransferAmountBonusAB + + Used by: + Ship: Bhaalgorn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', ship.getModifiedItemAttr('shipBonusAB'), + skill='Amarr Battleship') + + +class Effect1220(BaseEffect): + """ + shipEnergyVampireTransferAmountBonusAc + + Used by: + Ship: Ashimmu + Ship: Rabisu + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect1221(BaseEffect): + """ + shipStasisWebRangeBonusMB + + Used by: + Ship: Bhaalgorn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect1222(BaseEffect): + """ + shipStasisWebRangeBonusMC2 + + Used by: + Ship: Ashimmu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect1228(BaseEffect): + """ + shipProjectileTrackingGF + + Used by: + Ship: Chremoas + Ship: Dramiel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect1230(BaseEffect): + """ + shipMissileVelocityPirateFactionFrigate + + Used by: + Ship: Barghest + Ship: Garmur + Ship: Orthrus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1232(BaseEffect): + """ + shipProjectileRofPirateCruiser + + Used by: + Ship: Cynabal + Ship: Moracha + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1233(BaseEffect): + """ + shipHybridDmgPirateCruiser + + Used by: + Ship: Gnosis + Ship: Vigilant + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1234(BaseEffect): + """ + shipMissileVelocityPirateFactionLight + + Used by: + Ship: Corax + Ship: Talwar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1239(BaseEffect): + """ + shipProjectileRofPirateBattleship + + Used by: + Ship: Machariel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1240(BaseEffect): + """ + shipHybridDmgPirateBattleship + + Used by: + Ship: Vindicator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect1255(BaseEffect): + """ + setBonusBloodraider + + Used by: + Implants named like: grade Talisman (18 of 18) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'durationBonus', implant.getModifiedItemAttr('implantSetBloodraider')) + + +class Effect1256(BaseEffect): + """ + setBonusBloodraiderNosferatu + + Used by: + Implants named like: grade Talisman (15 of 18) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capacitor Emission Systems'), + 'duration', implant.getModifiedItemAttr('durationBonus')) + + +class Effect1261(BaseEffect): + """ + setBonusSerpentis + + Used by: + Implants named like: grade Snake (18 of 18) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'velocityBonus', implant.getModifiedItemAttr('implantSetSerpentis')) + + +class Effect1264(BaseEffect): + """ + interceptor2HybridTracking + + Used by: + Ship: Taranis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusInterceptor2'), + skill='Interceptors') + + +class Effect1268(BaseEffect): + """ + interceptor2LaserTracking + + Used by: + Ship: Crusader + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusInterceptor2'), + skill='Interceptors') + + +class Effect1281(BaseEffect): + """ + structuralAnalysisEffect + + Used by: + Implants named like: Inherent Implants 'Noble' Repair Proficiency RP (6 of 6) + Modules named like: Auxiliary Nano Pump (8 of 8) + Implant: Imperial Navy Modified 'Noble' Implant + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + penalized = 'implant' not in context + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', container.getModifiedItemAttr('repairBonus'), + stackingPenalties=penalized) + + +class Effect1318(BaseEffect): + """ + ewSkillScanStrengthBonus + + Used by: + Modules named like: Particle Dispersion Augmentor (8 of 8) + Skill: Signal Dispersion + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + groups = ('ECM', 'Burst Jammer') + level = container.level if 'skill' in context else 1 + for scanType in ('Gravimetric', 'Ladar', 'Magnetometric', 'Radar'): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'scan{0}StrengthBonus'.format(scanType), + container.getModifiedItemAttr('scanSkillEwStrengthBonus') * level, + stackingPenalties=False if 'skill' in context else True) + + +class Effect1360(BaseEffect): + """ + ewSkillRsdCapNeedBonusSkillLevel + + Used by: + Implants named like: Zainou 'Gypsy' Sensor Linking SL (6 of 6) + Skill: Sensor Linking + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Sensor Linking'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect1361(BaseEffect): + """ + ewSkillTdCapNeedBonusSkillLevel + + Used by: + Implants named like: Zainou 'Gypsy' Weapon Disruption WD (6 of 6) + Skill: Weapon Disruption + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect1370(BaseEffect): + """ + ewSkillTpCapNeedBonusSkillLevel + + Used by: + Implants named like: Zainou 'Gypsy' Target Painting TG (6 of 6) + Skill: Target Painting + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Target Painting'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect1372(BaseEffect): + """ + ewSkillEwCapNeedSkillLevel + + Used by: + Implants named like: Zainou 'Gypsy' Electronic Warfare EW (6 of 6) + Modules named like: Signal Disruption Amplifier (8 of 8) + Skill: Electronic Warfare + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect1395(BaseEffect): + """ + shieldBoostAmplifierPassive + + Used by: + Implants named like: grade Crystal (15 of 18) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', container.getModifiedItemAttr('shieldBoostMultiplier')) + + +class Effect1397(BaseEffect): + """ + setBonusGuristas + + Used by: + Implants named like: grade Crystal (18 of 18) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'shieldBoostMultiplier', implant.getModifiedItemAttr('implantSetGuristas')) + + +class Effect1409(BaseEffect): + """ + systemScanDurationSkillAstrometrics + + Used by: + Implants named like: Poteque 'Prospector' Astrometric Acquisition AQ (3 of 3) + Skill: Astrometric Acquisition + Skill: Astrometrics + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Astrometrics'), + 'duration', container.getModifiedItemAttr('durationBonus') * level) + + +class Effect1410(BaseEffect): + """ + propulsionSkillCapNeedBonusSkillLevel + + Used by: + Implants named like: Zainou 'Gypsy' Propulsion Jamming PJ (6 of 6) + Skill: Propulsion Jamming + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + + level = container.level if 'skill' in context else 1 + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Propulsion Jamming'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect1412(BaseEffect): + """ + shipBonusHybridOptimalCB + + Used by: + Ship: Rokh + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect1434(BaseEffect): + """ + caldariShipEwStrengthCB + + Used by: + Ship: Scorpion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for sensorType in ('Gravimetric', 'Ladar', 'Magnetometric', 'Radar'): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Electronic Warfare'), + 'scan{0}StrengthBonus'.format(sensorType), + ship.getModifiedItemAttr('shipBonusCB'), stackingPenalties=True, + skill='Caldari Battleship') + + +class Effect1441(BaseEffect): + """ + caldariShipEwOptimalRangeCB3 + + Used by: + Ship: Scorpion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'maxRange', ship.getModifiedItemAttr('shipBonusCB3'), skill='Caldari Battleship') + + +class Effect1442(BaseEffect): + """ + caldariShipEwOptimalRangeCC2 + + Used by: + Ship: Blackbird + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'maxRange', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect1443(BaseEffect): + """ + caldariShipEwCapacitorNeedCC + + Used by: + Ship: Chameleon + Ship: Falcon + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect1445(BaseEffect): + """ + ewSkillRsdMaxRangeBonus + + Used by: + Modules named like: Particle Dispersion Projector (8 of 8) + Skill: Long Distance Jamming + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Sensor Linking'), + 'maxRange', container.getModifiedItemAttr('rangeSkillBonus') * level, + stackingPenalties='skill' not in context) + + +class Effect1446(BaseEffect): + """ + ewSkillTpMaxRangeBonus + + Used by: + Modules named like: Particle Dispersion Projector (8 of 8) + Skill: Long Distance Jamming + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'maxRange', container.getModifiedItemAttr('rangeSkillBonus') * level, + stackingPenalties='skill' not in context) + + +class Effect1448(BaseEffect): + """ + ewSkillTdMaxRangeBonus + + Used by: + Modules named like: Particle Dispersion Projector (8 of 8) + Skill: Long Distance Jamming + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Weapon Disruptor', + 'maxRange', container.getModifiedItemAttr('rangeSkillBonus') * level, + stackingPenalties='skill' not in context) + + +class Effect1449(BaseEffect): + """ + ewSkillRsdFallOffBonus + + Used by: + Skill: Frequency Modulation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Sensor Linking'), + 'falloffEffectiveness', skill.getModifiedItemAttr('falloffBonus') * skill.level) + + +class Effect1450(BaseEffect): + """ + ewSkillTpFallOffBonus + + Used by: + Skill: Frequency Modulation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'falloffEffectiveness', skill.getModifiedItemAttr('falloffBonus') * skill.level) + + +class Effect1451(BaseEffect): + """ + ewSkillTdFallOffBonus + + Used by: + Skill: Frequency Modulation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Weapon Disruptor', + 'falloffEffectiveness', skill.getModifiedItemAttr('falloffBonus') * skill.level) + + +class Effect1452(BaseEffect): + """ + ewSkillEwMaxRangeBonus + + Used by: + Implants named like: grade Centurion (10 of 12) + Modules named like: Particle Dispersion Projector (8 of 8) + Skill: Long Distance Jamming + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'maxRange', container.getModifiedItemAttr('rangeSkillBonus') * level, + stackingPenalties='skill' not in context and 'implant' not in context) + + +class Effect1453(BaseEffect): + """ + ewSkillEwFallOffBonus + + Used by: + Skill: Frequency Modulation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'falloffEffectiveness', skill.getModifiedItemAttr('falloffBonus') * skill.level) + + +class Effect1472(BaseEffect): + """ + missileSkillAoeCloudSizeBonus + + Used by: + Implants named like: Zainou 'Deadeye' Guided Missile Precision GP (6 of 6) + Modules named like: Warhead Rigor Catalyst (8 of 8) + Skill: Guided Missile Precision + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalize = False if 'skill' in context or 'implant' in context else True + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeCloudSize', container.getModifiedItemAttr('aoeCloudSizeBonus') * level, + stackingPenalties=penalize) + + +class Effect1500(BaseEffect): + """ + shieldOperationSkillBoostCapacitorNeedBonus + + Used by: + Modules named like: Core Defense Capacitor Safeguard (8 of 8) + Skill: Shield Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'capacitorNeed', container.getModifiedItemAttr('shieldBoostCapacitorBonus') * level) + + +class Effect1550(BaseEffect): + """ + ewSkillTargetPaintingStrengthBonus + + Used by: + Skill: Signature Focusing + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'signatureRadiusBonus', + skill.getModifiedItemAttr('scanSkillTargetPaintStrengthBonus') * skill.level) + + +class Effect1551(BaseEffect): + """ + minmatarShipEwTargetPainterMF2 + + Used by: + Ship: Hyena + Ship: Vigil + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'signatureRadiusBonus', ship.getModifiedItemAttr('shipBonusMF2'), + skill='Minmatar Frigate') + + +class Effect1577(BaseEffect): + """ + angelsetbonus + + Used by: + Implants named like: grade Halo (18 of 18) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply( + lambda implant: 'signatureRadiusBonus' in implant.itemModifiedAttributes and + 'implantSetAngel' in implant.itemModifiedAttributes, + 'signatureRadiusBonus', + implant.getModifiedItemAttr('implantSetAngel')) + + +class Effect1579(BaseEffect): + """ + setBonusSansha + + Used by: + Implants named like: grade Slave (18 of 18) + Implant: High-grade Halo Omega + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'armorHpBonus', implant.getModifiedItemAttr('implantSetSansha') or 1) + + +class Effect1581(BaseEffect): + """ + jumpDriveSkillsRangeBonus + + Used by: + Skill: Jump Drive Calibration + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.ship.boostItemAttr('jumpDriveRange', skill.getModifiedItemAttr('jumpDriveRangeBonus') * skill.level) + + +class Effect1585(BaseEffect): + """ + capitalTurretSkillLaserDamage + + Used by: + Skill: Capital Energy Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1586(BaseEffect): + """ + capitalTurretSkillProjectileDamage + + Used by: + Skill: Capital Projectile Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Projectile Turret'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1587(BaseEffect): + """ + capitalTurretSkillHybridDamage + + Used by: + Skill: Capital Hybrid Turret + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1588(BaseEffect): + """ + capitalLauncherSkillCitadelKineticDamage + + Used by: + Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) + Skill: XL Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect1590(BaseEffect): + """ + missileSkillAoeVelocityBonus + + Used by: + Implants named like: Zainou 'Deadeye' Target Navigation Prediction TN (6 of 6) + Modules named like: Warhead Flare Catalyst (8 of 8) + Skill: Target Navigation Prediction + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalize = False if 'skill' in context or 'implant' in context else True + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeVelocity', container.getModifiedItemAttr('aoeVelocityBonus') * level, + stackingPenalties=penalize) + + +class Effect1592(BaseEffect): + """ + capitalLauncherSkillCitadelEmDamage + + Used by: + Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) + Skill: XL Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), + 'emDamage', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect1593(BaseEffect): + """ + capitalLauncherSkillCitadelExplosiveDamage + + Used by: + Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) + Skill: XL Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect1594(BaseEffect): + """ + capitalLauncherSkillCitadelThermalDamage + + Used by: + Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) + Skill: XL Torpedoes + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect1595(BaseEffect): + """ + missileSkillWarheadUpgradesEmDamageBonus + + Used by: + Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) + Skill: Warhead Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + mod = src.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'emDamage', src.getModifiedItemAttr('damageMultiplierBonus') * mod) + + +class Effect1596(BaseEffect): + """ + missileSkillWarheadUpgradesExplosiveDamageBonus + + Used by: + Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) + Skill: Warhead Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + mod = src.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', src.getModifiedItemAttr('damageMultiplierBonus') * mod) + + +class Effect1597(BaseEffect): + """ + missileSkillWarheadUpgradesKineticDamageBonus + + Used by: + Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) + Skill: Warhead Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + mod = src.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', src.getModifiedItemAttr('damageMultiplierBonus') * mod) + + +class Effect1615(BaseEffect): + """ + shipAdvancedSpaceshipCommandAgilityBonus + + Used by: + Items from market group: Ships > Capital Ships (40 of 40) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + skillName = 'Advanced Spaceship Command' + skill = fit.character.getSkill(skillName) + fit.ship.boostItemAttr('agility', skill.getModifiedItemAttr('agilityBonus'), skill=skillName) + + +class Effect1616(BaseEffect): + """ + skillCapitalShipsAdvancedAgility + + Used by: + Skill: Capital Ships + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + if fit.ship.item.requiresSkill('Capital Ships'): + fit.ship.boostItemAttr('agility', skill.getModifiedItemAttr('agilityBonus') * skill.level) + + +class Effect1617(BaseEffect): + """ + shipCapitalAgilityBonus + + Used by: + Items from market group: Ships > Capital Ships (31 of 40) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.multiplyItemAttr('agility', src.getModifiedItemAttr('advancedCapitalAgility'), stackingPenalties=True) + + +class Effect1634(BaseEffect): + """ + capitalShieldOperationSkillCapacitorNeedBonus + + Used by: + Modules named like: Core Defense Capacitor Safeguard (8 of 8) + Skill: Capital Shield Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), + 'capacitorNeed', container.getModifiedItemAttr('shieldBoostCapacitorBonus') * level) + + +class Effect1635(BaseEffect): + """ + capitalRepairSystemsSkillDurationBonus + + Used by: + Modules named like: Nanobot Accelerator (8 of 8) + Skill: Capital Repair Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), + 'duration', container.getModifiedItemAttr('durationSkillBonus') * level, + stackingPenalties='skill' not in context) + + +class Effect1638(BaseEffect): + """ + skillAdvancedWeaponUpgradesPowerNeedBonus + + Used by: + Skill: Advanced Weapon Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Gunnery') or mod.item.requiresSkill('Missile Launcher Operation'), + 'power', skill.getModifiedItemAttr('powerNeedBonus') * skill.level) + + +class Effect1643(BaseEffect): + """ + armoredCommandMindlink + + Used by: + Implant: Armored Command Mindlink + Implant: Federation Navy Command Mindlink + Implant: Imperial Navy Command Mindlink + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'buffDuration', + src.getModifiedItemAttr('mindlinkBonus')) + + +class Effect1644(BaseEffect): + """ + skirmishCommandMindlink + + Used by: + Implant: Federation Navy Command Mindlink + Implant: Republic Fleet Command Mindlink + Implant: Skirmish Command Mindlink + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'buffDuration', + src.getModifiedItemAttr('mindlinkBonus')) + + +class Effect1645(BaseEffect): + """ + shieldCommandMindlink + + Used by: + Implants from group: Cyber Leadership (4 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'buffDuration', + src.getModifiedItemAttr('mindlinkBonus')) + + +class Effect1646(BaseEffect): + """ + informationCommandMindlink + + Used by: + Implant: Caldari Navy Command Mindlink + Implant: Imperial Navy Command Mindlink + Implant: Information Command Mindlink + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'buffDuration', + src.getModifiedItemAttr('mindlinkBonus')) + + +class Effect1650(BaseEffect): + """ + skillSiegeModuleConsumptionQuantityBonus + + Used by: + Skill: Tactical Weapon Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + amount = -skill.getModifiedItemAttr('consumptionQuantityBonus') + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), + 'consumptionQuantity', amount * skill.level) + + +class Effect1657(BaseEffect): + """ + missileSkillWarheadUpgradesThermalDamageBonus + + Used by: + Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) + Skill: Warhead Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + mod = src.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', src.getModifiedItemAttr('damageMultiplierBonus') * mod) + + +class Effect1668(BaseEffect): + """ + freighterCargoBonusA2 + + Used by: + Variations of ship: Providence (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('freighterBonusA2'), skill='Amarr Freighter') + + +class Effect1669(BaseEffect): + """ + freighterCargoBonusC2 + + Used by: + Variations of ship: Charon (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('freighterBonusC2'), skill='Caldari Freighter') + + +class Effect1670(BaseEffect): + """ + freighterCargoBonusG2 + + Used by: + Variations of ship: Obelisk (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('freighterBonusG2'), skill='Gallente Freighter') + + +class Effect1671(BaseEffect): + """ + freighterCargoBonusM2 + + Used by: + Variations of ship: Fenrir (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacity', ship.getModifiedItemAttr('freighterBonusM2'), skill='Minmatar Freighter') + + +class Effect1672(BaseEffect): + """ + freighterMaxVelocityBonusA1 + + Used by: + Ship: Providence + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('freighterBonusA1'), skill='Amarr Freighter') + + +class Effect1673(BaseEffect): + """ + freighterMaxVelocityBonusC1 + + Used by: + Ship: Charon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('freighterBonusC1'), skill='Caldari Freighter') + + +class Effect1674(BaseEffect): + """ + freighterMaxVelocityBonusG1 + + Used by: + Ship: Obelisk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('freighterBonusG1'), skill='Gallente Freighter') + + +class Effect1675(BaseEffect): + """ + freighterMaxVelocityBonusM1 + + Used by: + Ship: Fenrir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('freighterBonusM1'), skill='Minmatar Freighter') + + +class Effect1720(BaseEffect): + """ + shieldBoostAmplifier + + Used by: + Modules from group: Capacitor Power Relay (20 of 20) + Modules from group: Shield Boost Amplifier (25 of 25) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Operation') or mod.item.requiresSkill('Capital Shield Operation'), + 'shieldBonus', module.getModifiedItemAttr('shieldBoostMultiplier'), + stackingPenalties=True) + + +class Effect1722(BaseEffect): + """ + jumpDriveSkillsCapacitorNeedBonus + + Used by: + Skill: Jump Drive Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.ship.boostItemAttr('jumpDriveCapacitorNeed', + skill.getModifiedItemAttr('jumpDriveCapacitorNeedBonus') * skill.level) + + +class Effect1730(BaseEffect): + """ + droneDmgBonus + + Used by: + Skills from group: Drones (8 of 26) + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill(skill), + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect1738(BaseEffect): + """ + doHacking + + Used by: + Modules from group: Data Miners (10 of 10) + """ + + type = 'active' + + +class Effect1763(BaseEffect): + """ + missileSkillRapidLauncherRoF + + Used by: + Implants named like: Zainou 'Deadeye' Rapid Launch RL (6 of 6) + Implant: Standard Cerebral Accelerator + Implant: Whelan Machorin's Ballistic Smartlink + Skill: Missile Launcher Operation + Skill: Rapid Launch + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', container.getModifiedItemAttr('rofBonus') * level) + + +class Effect1764(BaseEffect): + """ + missileSkillMissileProjectileVelocityBonus + + Used by: + Implants named like: Zainou 'Deadeye' Missile Projection MP (6 of 6) + Modules named like: Hydraulic Bay Thrusters (8 of 8) + Skill: Missile Projection + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalized = False if 'skill' in context or 'implant' in context else True + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', container.getModifiedItemAttr('speedFactor') * level, + stackingPenalties=penalized) + + +class Effect1773(BaseEffect): + """ + shipBonusSHTFalloffGF2 + + Used by: + Ship: Atron + Ship: Daredevil + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect1804(BaseEffect): + """ + shipArmorEMResistanceAF1 + + Used by: + Ship: Astero + Ship: Malice + Ship: Punisher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect1805(BaseEffect): + """ + shipArmorTHResistanceAF1 + + Used by: + Ship: Astero + Ship: Malice + Ship: Punisher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('shipBonusAF'), + skill='Amarr Frigate') + + +class Effect1806(BaseEffect): + """ + shipArmorKNResistanceAF1 + + Used by: + Ship: Astero + Ship: Malice + Ship: Punisher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('shipBonusAF'), + skill='Amarr Frigate') + + +class Effect1807(BaseEffect): + """ + shipArmorEXResistanceAF1 + + Used by: + Ship: Astero + Ship: Malice + Ship: Punisher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusAF'), + skill='Amarr Frigate') + + +class Effect1812(BaseEffect): + """ + shipShieldEMResistanceCC2 + + Used by: + Variations of ship: Moa (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect1813(BaseEffect): + """ + shipShieldThermalResistanceCC2 + + Used by: + Variations of ship: Moa (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', ship.getModifiedItemAttr('shipBonusCC2'), + skill='Caldari Cruiser') + + +class Effect1814(BaseEffect): + """ + shipShieldKineticResistanceCC2 + + Used by: + Variations of ship: Moa (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', ship.getModifiedItemAttr('shipBonusCC2'), + skill='Caldari Cruiser') + + +class Effect1815(BaseEffect): + """ + shipShieldExplosiveResistanceCC2 + + Used by: + Variations of ship: Moa (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusCC2'), + skill='Caldari Cruiser') + + +class Effect1816(BaseEffect): + """ + shipShieldEMResistanceCF2 + + Used by: + Variations of ship: Merlin (3 of 4) + Ship: Cambion + Ship: Whiptail + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect1817(BaseEffect): + """ + shipShieldThermalResistanceCF2 + + Used by: + Variations of ship: Merlin (3 of 4) + Ship: Cambion + Ship: Whiptail + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', ship.getModifiedItemAttr('shipBonusCF'), + skill='Caldari Frigate') + + +class Effect1819(BaseEffect): + """ + shipShieldKineticResistanceCF2 + + Used by: + Variations of ship: Merlin (3 of 4) + Ship: Cambion + Ship: Whiptail + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', ship.getModifiedItemAttr('shipBonusCF'), + skill='Caldari Frigate') + + +class Effect1820(BaseEffect): + """ + shipShieldExplosiveResistanceCF2 + + Used by: + Variations of ship: Merlin (3 of 4) + Ship: Cambion + Ship: Whiptail + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusCF'), + skill='Caldari Frigate') + + +class Effect1848(BaseEffect): + """ + miningForemanMindlink + + Used by: + Implant: Mining Foreman Mindlink + Implant: ORE Mining Director Mindlink + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('mindlinkBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'buffDuration', + src.getModifiedItemAttr('mindlinkBonus')) + + +class Effect1851(BaseEffect): + """ + selfRof + + Used by: + Skills named like: Missile Specialization (4 of 5) + Skill: Rocket Specialization + Skill: Torpedo Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), + 'speed', skill.getModifiedItemAttr('rofBonus') * skill.level) + + +class Effect1862(BaseEffect): + """ + shipMissileEMDamageCF2 + + Used by: + Ship: Garmur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'emDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect1863(BaseEffect): + """ + shipMissileThermalDamageCF2 + + Used by: + Ship: Garmur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect1864(BaseEffect): + """ + shipMissileExplosiveDamageCF2 + + Used by: + Ship: Garmur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusCF2'), + skill='Caldari Frigate') + + +class Effect1882(BaseEffect): + """ + miningYieldMultiplyPercent + + Used by: + Variations of module: Mining Laser Upgrade I (5 of 5) + Module: Frostline 'Omnivore' Harvester Upgrade + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'miningAmount', module.getModifiedItemAttr('miningAmountBonus')) + + +class Effect1885(BaseEffect): + """ + shipCruiseLauncherROFBonus2CB + + Used by: + Ship: Raven + Ship: Raven State Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Cruise', + 'speed', ship.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect1886(BaseEffect): + """ + shipSiegeLauncherROFBonus2CB + + Used by: + Ship: Raven + Ship: Raven State Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', + 'speed', ship.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect1896(BaseEffect): + """ + eliteBargeBonusIceHarvestingCycleTimeBarge3 + + Used by: + Ships from group: Exhumer (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), + 'duration', ship.getModifiedItemAttr('eliteBonusBarge2'), skill='Exhumers') + + +class Effect1910(BaseEffect): + """ + eliteBonusVampireDrainAmount2 + + Used by: + Ship: Curse + Ship: Pilgrim + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', ship.getModifiedItemAttr('eliteBonusReconShip2'), + skill='Recon Ships') + + +class Effect1911(BaseEffect): + """ + eliteReconBonusGravimetricStrength2 + + Used by: + Ship: Chameleon + Ship: Falcon + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanGravimetricStrengthBonus', ship.getModifiedItemAttr('eliteBonusReconShip2'), + skill='Recon Ships') + + +class Effect1912(BaseEffect): + """ + eliteReconBonusMagnetometricStrength2 + + Used by: + Ship: Chameleon + Ship: Falcon + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanMagnetometricStrengthBonus', ship.getModifiedItemAttr('eliteBonusReconShip2'), + skill='Recon Ships') + + +class Effect1913(BaseEffect): + """ + eliteReconBonusRadarStrength2 + + Used by: + Ship: Chameleon + Ship: Falcon + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanRadarStrengthBonus', ship.getModifiedItemAttr('eliteBonusReconShip2'), + skill='Recon Ships') + + +class Effect1914(BaseEffect): + """ + eliteReconBonusLadarStrength2 + + Used by: + Ship: Chameleon + Ship: Falcon + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanLadarStrengthBonus', ship.getModifiedItemAttr('eliteBonusReconShip2'), + skill='Recon Ships') + + +class Effect1921(BaseEffect): + """ + eliteReconStasisWebBonus2 + + Used by: + Ship: Huginn + Ship: Moracha + Ship: Rapier + Ship: Victor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', ship.getModifiedItemAttr('eliteBonusReconShip2'), skill='Recon Ships') + + +class Effect1922(BaseEffect): + """ + eliteReconScramblerRangeBonus2 + + Used by: + Ship: Arazu + Ship: Enforcer + Ship: Lachesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'maxRange', ship.getModifiedItemAttr('eliteBonusReconShip2'), skill='Recon Ships') + + +class Effect1959(BaseEffect): + """ + armorReinforcerMassAdd + + Used by: + Modules from group: Armor Reinforcer (51 of 51) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('mass', module.getModifiedItemAttr('massAddition')) + + +class Effect1964(BaseEffect): + """ + shipBonusShieldTransferCapneed1 + + Used by: + Ship: Osprey + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect1969(BaseEffect): + """ + shipBonusRemoteArmorRepairCapNeedGC1 + + Used by: + Ship: Exequror + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect1996(BaseEffect): + """ + caldariShipEwCapacitorNeedCF2 + + Used by: + Ship: Griffin + Ship: Kitsune + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect2000(BaseEffect): + """ + droneRangeBonusAdd + + Used by: + Modules from group: Drone Control Range Module (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + amount = module.getModifiedItemAttr('droneRangeBonus') + fit.extraAttributes.increase('droneControlRange', amount) + + +class Effect2008(BaseEffect): + """ + cynosuralDurationBonus + + Used by: + Ships from group: Force Recon Ship (8 of 9) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Cynosural Field Generator', + 'duration', ship.getModifiedItemAttr('durationBonus')) + + +class Effect2013(BaseEffect): + """ + droneMaxVelocityBonus + + Used by: + Modules named like: Drone Speed Augmentor (6 of 8) + Implant: Overmind 'Goliath' Drone Tuner T25-10S + Implant: Overmind 'Hawkmoth' Drone Tuner S10-25T + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxVelocity', container.getModifiedItemAttr('droneMaxVelocityBonus') * level, stackingPenalties=True) + + +class Effect2014(BaseEffect): + """ + droneMaxRangeBonus + + Used by: + Modules named like: Drone Scope Chip (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + stacking = False if 'skill' in context else True + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxRange', + container.getModifiedItemAttr('rangeSkillBonus') * level, + stackingPenalties=stacking) + + +class Effect2015(BaseEffect): + """ + droneDurabilityShieldCapBonus + + Used by: + Modules named like: Drone Durability Enhancer (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'shieldCapacity', module.getModifiedItemAttr('hullHpBonus')) + + +class Effect2016(BaseEffect): + """ + droneDurabilityArmorHPBonus + + Used by: + Modules named like: Drone Durability Enhancer (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'armorHP', module.getModifiedItemAttr('hullHpBonus')) + + +class Effect2017(BaseEffect): + """ + droneDurabilityHPBonus + + Used by: + Modules named like: Drone Durability Enhancer (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'hp', container.getModifiedItemAttr('hullHpBonus') * level) + + +class Effect2019(BaseEffect): + """ + repairDroneShieldBonusBonus + + Used by: + Modules named like: Drone Repair Augmentor (8 of 8) + Skill: Repair Drone Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Logistic Drone', + 'shieldBonus', container.getModifiedItemAttr('damageHP') * level) + + +class Effect2020(BaseEffect): + """ + repairDroneArmorDamageAmountBonus + + Used by: + Modules named like: Drone Repair Augmentor (8 of 8) + Skill: Repair Drone Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Logistic Drone', + 'armorDamageAmount', container.getModifiedItemAttr('damageHP') * level, + stackingPenalties=True) + + +class Effect2029(BaseEffect): + """ + addToSignatureRadius2 + + Used by: + Modules from group: Missile Launcher Bomb (2 of 2) + Modules from group: Shield Extender (36 of 36) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadiusAdd')) + + +class Effect2041(BaseEffect): + """ + modifyArmorResonancePostPercent + + Used by: + Modules from group: Armor Coating (202 of 202) + Modules from group: Armor Plating Energized (187 of 187) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for type in ('kinetic', 'thermal', 'explosive', 'em'): + fit.ship.boostItemAttr('armor%sDamageResonance' % type.capitalize(), + module.getModifiedItemAttr('%sDamageResistanceBonus' % type), + stackingPenalties=True) + + +class Effect2052(BaseEffect): + """ + modifyShieldResonancePostPercent + + Used by: + Modules from group: Shield Resistance Amplifier (88 of 88) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for type in ('kinetic', 'thermal', 'explosive', 'em'): + fit.ship.boostItemAttr('shield%sDamageResonance' % type.capitalize(), + module.getModifiedItemAttr('%sDamageResistanceBonus' % type), + stackingPenalties=True) + + +class Effect2053(BaseEffect): + """ + emShieldCompensationHardeningBonusGroupShieldAmp + + Used by: + Skill: EM Shield Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Shield Resistance Amplifier', + 'emDamageResistanceBonus', skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2054(BaseEffect): + """ + explosiveShieldCompensationHardeningBonusGroupShieldAmp + + Used by: + Skill: Explosive Shield Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Shield Resistance Amplifier', + 'explosiveDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2055(BaseEffect): + """ + kineticShieldCompensationHardeningBonusGroupShieldAmp + + Used by: + Skill: Kinetic Shield Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Shield Resistance Amplifier', + 'kineticDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2056(BaseEffect): + """ + thermalShieldCompensationHardeningBonusGroupShieldAmp + + Used by: + Skill: Thermal Shield Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Shield Resistance Amplifier', + 'thermalDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2105(BaseEffect): + """ + emArmorCompensationHardeningBonusGroupArmorCoating + + Used by: + Skill: EM Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Coating', + 'emDamageResistanceBonus', skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2106(BaseEffect): + """ + explosiveArmorCompensationHardeningBonusGroupArmorCoating + + Used by: + Skill: Explosive Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Coating', + 'explosiveDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2107(BaseEffect): + """ + kineticArmorCompensationHardeningBonusGroupArmorCoating + + Used by: + Skill: Kinetic Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Coating', + 'kineticDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2108(BaseEffect): + """ + thermicArmorCompensationHardeningBonusGroupArmorCoating + + Used by: + Skill: Thermal Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Coating', + 'thermalDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2109(BaseEffect): + """ + emArmorCompensationHardeningBonusGroupEnergized + + Used by: + Skill: EM Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Plating Energized', + 'emDamageResistanceBonus', skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2110(BaseEffect): + """ + explosiveArmorCompensationHardeningBonusGroupEnergized + + Used by: + Skill: Explosive Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Plating Energized', + 'explosiveDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2111(BaseEffect): + """ + kineticArmorCompensationHardeningBonusGroupEnergized + + Used by: + Skill: Kinetic Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Plating Energized', + 'kineticDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2112(BaseEffect): + """ + thermicArmorCompensationHardeningBonusGroupEnergized + + Used by: + Skill: Thermal Armor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Plating Energized', + 'thermalDamageResistanceBonus', + skill.getModifiedItemAttr('hardeningBonus') * skill.level) + + +class Effect2130(BaseEffect): + """ + smallHybridMaxRangeBonus + + Used by: + Ship: Catalyst + Ship: Cormorant + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('maxRangeBonus')) + + +class Effect2131(BaseEffect): + """ + smallEnergyMaxRangeBonus + + Used by: + Ship: Coercer + Ship: Gold Magnate + Ship: Silver Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('maxRangeBonus')) + + +class Effect2132(BaseEffect): + """ + smallProjectileMaxRangeBonus + + Used by: + Ship: Thrasher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('maxRangeBonus')) + + +class Effect2133(BaseEffect): + """ + energyTransferArrayMaxRangeBonus + + Used by: + Ship: Augoror + Ship: Osprey + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'maxRange', ship.getModifiedItemAttr('maxRangeBonus2')) + + +class Effect2134(BaseEffect): + """ + shieldTransporterMaxRangeBonus + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + Ship: Osprey + Ship: Rorqual + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Shield Booster', 'maxRange', + ship.getModifiedItemAttr('maxRangeBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Ancillary Remote Shield Booster', 'maxRange', + ship.getModifiedItemAttr('maxRangeBonus')) + + +class Effect2135(BaseEffect): + """ + armorRepairProjectorMaxRangeBonus + + Used by: + Variations of ship: Navitas (2 of 2) + Ship: Augoror + Ship: Deacon + Ship: Exequror + Ship: Inquisitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Armor Repairer', 'maxRange', + src.getModifiedItemAttr('maxRangeBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Ancillary Remote Armor Repairer', 'maxRange', + src.getModifiedItemAttr('maxRangeBonus')) + + +class Effect2143(BaseEffect): + """ + minmatarShipEwTargetPainterMC2 + + Used by: + Ship: Huginn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'signatureRadiusBonus', ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect2155(BaseEffect): + """ + eliteBonusCommandShipProjectileDamageCS1 + + Used by: + Ship: Sleipnir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusCommandShips1'), + skill='Command Ships') + + +class Effect2156(BaseEffect): + """ + eliteBonusCommandShipProjectileFalloffCS2 + + Used by: + Ship: Sleipnir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusCommandShips2'), skill='Command Ships') + + +class Effect2157(BaseEffect): + """ + eliteBonusCommandShipLaserDamageCS1 + + Used by: + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusCommandShips1'), + skill='Command Ships') + + +class Effect2158(BaseEffect): + """ + eliteBonusCommandShipLaserROFCS2 + + Used by: + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'speed', ship.getModifiedItemAttr('eliteBonusCommandShips2'), skill='Command Ships') + + +class Effect2160(BaseEffect): + """ + eliteBonusCommandShipHybridFalloffCS2 + + Used by: + Ship: Astarte + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusCommandShips2'), skill='Command Ships') + + +class Effect2161(BaseEffect): + """ + eliteBonusCommandShipHybridOptimalCS1 + + Used by: + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusCommandShips1'), + skill='Command Ships') + + +class Effect2179(BaseEffect): + """ + shipBonusDroneHitpointsGC2 + + Used by: + Ships named like: Stratios (2 of 2) + Ship: Vexor + Ship: Vexor Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + type, ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect2181(BaseEffect): + """ + shipBonusDroneHitpointsFixedAC2 + + Used by: + Variations of ship: Arbitrator (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + type, ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect2186(BaseEffect): + """ + shipBonusDroneHitpointsGB2 + + Used by: + Variations of ship: Dominix (3 of 3) + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + type, ship.getModifiedItemAttr('shipBonusGB2'), skill='Gallente Battleship') + + +class Effect2187(BaseEffect): + """ + shipBonusDroneDamageMultiplierGB2 + + Used by: + Variations of ship: Dominix (3 of 3) + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGB2'), + skill='Gallente Battleship') + + +class Effect2188(BaseEffect): + """ + shipBonusDroneDamageMultiplierGC2 + + Used by: + Ships named like: Stratios (2 of 2) + Ship: Vexor + Ship: Vexor Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect2189(BaseEffect): + """ + shipBonusDroneDamageMultiplierAC2 + + Used by: + Variations of ship: Arbitrator (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect2200(BaseEffect): + """ + eliteBonusInterdictorsMissileKineticDamage1 + + Used by: + Ship: Flycatcher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Light Missiles') or mod.charge.requiresSkill('Rockets'), + 'kineticDamage', ship.getModifiedItemAttr('eliteBonusInterdictors1'), skill='Interdictors') + + +class Effect2201(BaseEffect): + """ + eliteBonusInterdictorsProjectileFalloff1 + + Used by: + Ship: Sabre + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusInterdictors1'), skill='Interdictors') + + +class Effect2215(BaseEffect): + """ + shipBonusPirateFrigateProjDamage + + Used by: + Ship: Chremoas + Ship: Dramiel + Ship: Sunesis + Ship: Svipul + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect2232(BaseEffect): + """ + scanStrengthBonusPercentOnline + + Used by: + Modules from group: Signal Amplifier (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for type in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + fit.ship.boostItemAttr('scan%sStrength' % type, + module.getModifiedItemAttr('scan%sStrengthPercent' % type), + stackingPenalties=True) + + +class Effect2249(BaseEffect): + """ + shipBonusDroneMiningAmountAC2 + + Used by: + Ship: Arbitrator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'miningAmount', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect2250(BaseEffect): + """ + shipBonusDroneMiningAmountGC2 + + Used by: + Ship: Vexor + Ship: Vexor Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect2251(BaseEffect): + """ + commandshipMultiRelayEffect + + Used by: + Ships from group: Command Ship (8 of 8) + Ships from group: Industrial Command Ship (2 of 2) + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupActive', + src.getModifiedItemAttr('maxGangModules')) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupOnline', + src.getModifiedItemAttr('maxGangModules')) + + +class Effect2252(BaseEffect): + """ + covertOpsAndReconOpsCloakModuleDelayBonus + + Used by: + Ships from group: Black Ops (5 of 5) + Ships from group: Blockade Runner (4 of 4) + Ships from group: Covert Ops (8 of 8) + Ships from group: Expedition Frigate (2 of 2) + Ships from group: Force Recon Ship (9 of 9) + Ships from group: Stealth Bomber (5 of 5) + Ships named like: Stratios (2 of 2) + Subsystems named like: Defensive Covert Reconfiguration (4 of 4) + Ship: Astero + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemForce(lambda mod: mod.item.requiresSkill('Cloaking'), + 'moduleReactivationDelay', + container.getModifiedItemAttr('covertOpsAndReconOpsCloakModuleDelay')) + + +class Effect2253(BaseEffect): + """ + covertOpsStealthBomberTargettingDelayBonus + + Used by: + Ships from group: Black Ops (5 of 5) + Ships from group: Stealth Bomber (5 of 5) + Ship: Caedes + Ship: Chremoas + Ship: Endurance + Ship: Etana + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemForce(lambda mod: mod.item.group.name == 'Cloaking Device', + 'cloakingTargetingDelay', + ship.getModifiedItemAttr('covertOpsStealthBomberTargettingDelay')) + + +class Effect2255(BaseEffect): + """ + tractorBeamCan + + Used by: + Deployables from group: Mobile Tractor Unit (3 of 3) + Modules from group: Tractor Beam (4 of 4) + """ + + type = 'active' + + +class Effect2298(BaseEffect): + """ + scanStrengthBonusPercentPassive + + Used by: + Implants named like: High grade (20 of 66) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + for type in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + sensorType = 'scan{0}Strength'.format(type) + sensorBoost = 'scan{0}StrengthPercent'.format(type) + if sensorBoost in implant.item.attributes: + fit.ship.boostItemAttr(sensorType, implant.getModifiedItemAttr(sensorBoost)) + + +class Effect2302(BaseEffect): + """ + damageControl + + Used by: + Modules from group: Damage Control (22 of 27) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): + for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): + bonus = '%s%sDamageResonance' % (attrPrefix, damageType) + bonus = '%s%s' % (bonus[0].lower(), bonus[1:]) + booster = '%s%sDamageResonance' % (layer, damageType) + fit.ship.multiplyItemAttr(bonus, module.getModifiedItemAttr(booster), + stackingPenalties=True, penaltyGroup='preMul') + + +class Effect2305(BaseEffect): + """ + eliteReconBonusEnergyNeutAmount2 + + Used by: + Ship: Curse + Ship: Pilgrim + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', ship.getModifiedItemAttr('eliteBonusReconShip2'), + skill='Recon Ships') + + +class Effect2354(BaseEffect): + """ + capitalRemoteArmorRepairerCapNeedBonusSkill + + Used by: + Variations of module: Capital Remote Repair Augmentor I (2 of 2) + Skill: Capital Remote Armor Repair Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Remote Armor Repair Systems'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect2355(BaseEffect): + """ + capitalRemoteShieldTransferCapNeedBonusSkill + + Used by: + Skill: Capital Shield Emission Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Emission Systems'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect2356(BaseEffect): + """ + capitalRemoteEnergyTransferCapNeedBonusSkill + + Used by: + Skill: Capital Capacitor Emission Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Capacitor Emission Systems'), + 'capacitorNeed', skill.getModifiedItemAttr('capNeedBonus') * skill.level) + + +class Effect2402(BaseEffect): + """ + skillSuperWeaponDmgBonus + + Used by: + Skill: Doomsday Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + damageTypes = ('em', 'explosive', 'kinetic', 'thermal') + for dmgType in damageTypes: + dmgAttr = '{0}Damage'.format(dmgType) + fit.modules.filteredItemBoost( + lambda mod: mod.item.group.name == 'Super Weapon' and dmgAttr in mod.itemModifiedAttributes, + dmgAttr, skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect2422(BaseEffect): + """ + implantVelocityBonus + + Used by: + Implants named like: Eifyr and Co. 'Rogue' Navigation NN (6 of 6) + Implant: Genolution Core Augmentation CA-3 + Implant: Shaqil's Speed Enhancer + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.boostItemAttr('maxVelocity', implant.getModifiedItemAttr('implantBonusVelocity')) + + +class Effect2432(BaseEffect): + """ + energyManagementCapacitorBonusPostPercentCapacityLocationShipGroupCapacitorCapacityBonus + + Used by: + Implants named like: Inherent Implants 'Squire' Capacitor Management EM (6 of 6) + Implants named like: Mindflood Booster (4 of 4) + Modules named like: Semiconductor Memory Cell (8 of 8) + Implant: Antipharmakon Aeolis + Implant: Genolution Core Augmentation CA-1 + Skill: Capacitor Management + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.ship.boostItemAttr('capacitorCapacity', container.getModifiedItemAttr('capacitorCapacityBonus') * level) + + +class Effect2444(BaseEffect): + """ + minerCpuUsageMultiplyPercent2 + + Used by: + Variations of module: Mining Laser Upgrade I (5 of 5) + Module: Frostline 'Omnivore' Harvester Upgrade + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'cpu', module.getModifiedItemAttr('cpuPenaltyPercent')) + + +class Effect2445(BaseEffect): + """ + iceMinerCpuUsagePercent + + Used by: + Variations of module: Ice Harvester Upgrade I (5 of 5) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), + 'cpu', module.getModifiedItemAttr('cpuPenaltyPercent')) + + +class Effect2456(BaseEffect): + """ + miningUpgradeCPUPenaltyReductionModulesRequiringMiningUpgradePercent + + Used by: + Implants named like: Inherent Implants 'Highwall' Mining Upgrades MU (3 of 3) + Skill: Mining Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Upgrades'), + 'cpuPenaltyPercent', + container.getModifiedItemAttr('miningUpgradeCPUReductionBonus') * level) + + +class Effect2465(BaseEffect): + """ + shipBonusArmorResistAB + + Used by: + Ship: Abaddon + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('Em', 'Explosive', 'Kinetic', 'Thermal'): + fit.ship.boostItemAttr('armor{0}DamageResonance'.format(type), ship.getModifiedItemAttr('shipBonusAB'), + skill='Amarr Battleship') + + +class Effect2479(BaseEffect): + """ + iceHarvestCycleTimeModulesRequiringIceHarvestingOnline + + Used by: + Variations of module: Ice Harvester Upgrade I (5 of 5) + Module: Frostline 'Omnivore' Harvester Upgrade + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), + 'duration', module.getModifiedItemAttr('iceHarvestCycleBonus')) + + +class Effect2485(BaseEffect): + """ + implantArmorHpBonus2 + + Used by: + Implants named like: Inherent Implants 'Noble' Hull Upgrades HG (7 of 7) + Implant: Genolution Core Augmentation CA-4 + Implant: Imperial Navy Modified 'Noble' Implant + Implant: Imperial Special Ops Field Enhancer - Standard + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.boostItemAttr('armorHP', implant.getModifiedItemAttr('armorHpBonus2')) + + +class Effect2488(BaseEffect): + """ + implantVelocityBonus2 + + Used by: + Implant: Republic Special Ops Field Enhancer - Gamma + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.boostItemAttr('maxVelocity', implant.getModifiedItemAttr('velocityBonus2')) + + +class Effect2489(BaseEffect): + """ + shipBonusRemoteTrackingComputerFalloffMC + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'falloffEffectiveness', ship.getModifiedItemAttr('shipBonusMC'), + skill='Minmatar Cruiser') + + +class Effect2490(BaseEffect): + """ + shipBonusRemoteTrackingComputerFalloffGC2 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'falloffEffectiveness', ship.getModifiedItemAttr('shipBonusGC2'), + skill='Gallente Cruiser') + + +class Effect2491(BaseEffect): + """ + ewSkillEcmBurstRangeBonus + + Used by: + Modules named like: Particle Dispersion Projector (8 of 8) + Skill: Long Distance Jamming + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Burst Jammer', + 'ecmBurstRange', container.getModifiedItemAttr('rangeSkillBonus') * level, + stackingPenalties=False if 'skill' in context else True) + + +class Effect2492(BaseEffect): + """ + ewSkillEcmBurstCapNeedBonus + + Used by: + Implants named like: Zainou 'Gypsy' Electronic Warfare EW (6 of 6) + Modules named like: Signal Disruption Amplifier (8 of 8) + Skill: Electronic Warfare + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Burst Jammer', + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect2503(BaseEffect): + """ + shipHTTrackingBonusGB2 + + Used by: + Ships named like: Megathron (3 of 3) + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGB2'), + skill='Gallente Battleship') + + +class Effect2504(BaseEffect): + """ + shipBonusHybridTrackingGF2 + + Used by: + Ship: Ares + Ship: Federation Navy Comet + Ship: Pacifier + Ship: Tristan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect2561(BaseEffect): + """ + eliteBonusAssaultShipMissileVelocity1 + + Used by: + Ship: Hawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusGunship1'), + skill='Assault Frigates') + + +class Effect2589(BaseEffect): + """ + modifyBoosterEffectChanceWithBoosterChanceBonusPostPercent + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Recovery NR (2 of 2) + Skill: Neurotoxin Recovery + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + for i in range(5): + attr = 'boosterEffectChance{0}'.format(i + 1) + fit.boosters.filteredItemBoost(lambda booster: attr in booster.itemModifiedAttributes, + attr, container.getModifiedItemAttr('boosterChanceBonus') * level) + + +class Effect2602(BaseEffect): + """ + shipBonusEmShieldResistanceCB2 + + Used by: + Ship: Rattlesnake + Ship: Rokh + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', ship.getModifiedItemAttr('shipBonus2CB'), + skill='Caldari Battleship') + + +class Effect2603(BaseEffect): + """ + shipBonusExplosiveShieldResistanceCB2 + + Used by: + Ship: Rattlesnake + Ship: Rokh + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonus2CB'), + skill='Caldari Battleship') + + +class Effect2604(BaseEffect): + """ + shipBonusKineticShieldResistanceCB2 + + Used by: + Ship: Rattlesnake + Ship: Rokh + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', ship.getModifiedItemAttr('shipBonus2CB'), + skill='Caldari Battleship') + + +class Effect2605(BaseEffect): + """ + shipBonusThermicShieldResistanceCB2 + + Used by: + Ship: Rattlesnake + Ship: Rokh + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', ship.getModifiedItemAttr('shipBonus2CB'), + skill='Caldari Battleship') + + +class Effect2611(BaseEffect): + """ + eliteBonusGunshipProjectileDamage1 + + Used by: + Ship: Wolf + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusGunship1'), + skill='Assault Frigates') + + +class Effect2644(BaseEffect): + """ + increaseSignatureRadiusOnline + + Used by: + Modules from group: Inertial Stabilizer (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadiusBonus'), stackingPenalties=True) + + +class Effect2645(BaseEffect): + """ + scanResolutionMultiplierOnline + + Used by: + Modules from group: Warp Core Stabilizer (8 of 8) + Module: Target Spectrum Breaker + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionMultiplier'), + stackingPenalties=True) + + +class Effect2646(BaseEffect): + """ + maxTargetRangeBonus + + Used by: + Modules from group: Warp Core Stabilizer (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True) + + +class Effect2647(BaseEffect): + """ + eliteBonusHeavyGunshipHeavyMissileLaunhcerRof2 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy', + 'speed', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect2648(BaseEffect): + """ + eliteBonusHeavyGunshipHeavyAssaultMissileLaunhcerRof2 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy Assault', + 'speed', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect2649(BaseEffect): + """ + eliteBonusHeavyGunshipAssaultMissileLaunhcerRof2 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Light', + 'speed', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect2670(BaseEffect): + """ + sensorBoosterActivePercentage + + Used by: + Modules from group: Sensor Booster (16 of 16) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True) + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True) + + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + fit.ship.boostItemAttr( + 'scan{}Strength'.format(scanType), + module.getModifiedItemAttr('scan{}StrengthPercent'.format(scanType)), + stackingPenalties=True + ) + + +class Effect2688(BaseEffect): + """ + capNeedBonusEffectLasers + + Used by: + Modules named like: Energy Discharge Elutriation (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'capacitorNeed', module.getModifiedItemAttr('capNeedBonus')) + + +class Effect2689(BaseEffect): + """ + capNeedBonusEffectHybrids + + Used by: + Modules named like: Hybrid Discharge Elutriation (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'capacitorNeed', module.getModifiedItemAttr('capNeedBonus')) + + +class Effect2690(BaseEffect): + """ + cpuNeedBonusEffectLasers + + Used by: + Modules named like: Algid Energy Administrations Unit (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'cpu', module.getModifiedItemAttr('cpuNeedBonus')) + + +class Effect2691(BaseEffect): + """ + cpuNeedBonusEffectHybrid + + Used by: + Modules named like: Algid Hybrid Administrations Unit (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'cpu', module.getModifiedItemAttr('cpuNeedBonus')) + + +class Effect2693(BaseEffect): + """ + falloffBonusEffectLasers + + Used by: + Modules named like: Energy Ambit Extension (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + + +class Effect2694(BaseEffect): + """ + falloffBonusEffectHybrids + + Used by: + Modules named like: Hybrid Ambit Extension (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + + +class Effect2695(BaseEffect): + """ + falloffBonusEffectProjectiles + + Used by: + Modules named like: Projectile Ambit Extension (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + + +class Effect2696(BaseEffect): + """ + maxRangeBonusEffectLasers + + Used by: + Modules named like: Energy Locus Coordinator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + + +class Effect2697(BaseEffect): + """ + maxRangeBonusEffectHybrids + + Used by: + Modules named like: Hybrid Locus Coordinator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + + +class Effect2698(BaseEffect): + """ + maxRangeBonusEffectProjectiles + + Used by: + Modules named like: Projectile Locus Coordinator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + + +class Effect2706(BaseEffect): + """ + drawbackPowerNeedLasers + + Used by: + Modules from group: Rig Energy Weapon (56 of 56) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'power', module.getModifiedItemAttr('drawback')) + + +class Effect2707(BaseEffect): + """ + drawbackPowerNeedHybrids + + Used by: + Modules from group: Rig Hybrid Weapon (56 of 56) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'power', module.getModifiedItemAttr('drawback')) + + +class Effect2708(BaseEffect): + """ + drawbackPowerNeedProjectiles + + Used by: + Modules from group: Rig Projectile Weapon (40 of 40) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'power', module.getModifiedItemAttr('drawback')) + + +class Effect2712(BaseEffect): + """ + drawbackArmorHP + + Used by: + Modules from group: Rig Navigation (48 of 64) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('armorHP', module.getModifiedItemAttr('drawback')) + + +class Effect2713(BaseEffect): + """ + drawbackCPUOutput + + Used by: + Modules from group: Rig Drones (58 of 64) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('cpuOutput', module.getModifiedItemAttr('drawback')) + + +class Effect2714(BaseEffect): + """ + drawbackCPUNeedLaunchers + + Used by: + Modules from group: Rig Launcher (48 of 48) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'cpu', module.getModifiedItemAttr('drawback')) + + +class Effect2716(BaseEffect): + """ + drawbackSigRad + + Used by: + Modules from group: Rig Shield (72 of 72) + Modules named like: Optimizer (16 of 16) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('signatureRadius', module.getModifiedItemAttr('drawback'), stackingPenalties=True) + + +class Effect2717(BaseEffect): + """ + drawbackMaxVelocity + + Used by: + Modules from group: Rig Armor (48 of 72) + Modules from group: Rig Resource Processing (8 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('drawback'), + stackingPenalties=True) + + +class Effect2718(BaseEffect): + """ + drawbackShieldCapacity + + Used by: + Modules from group: Rig Electronic Systems (40 of 48) + Modules from group: Rig Targeting (16 of 16) + Modules named like: Signal Focusing Kit (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('shieldCapacity', module.getModifiedItemAttr('drawback')) + + +class Effect2726(BaseEffect): + """ + miningClouds + + Used by: + Modules from group: Gas Cloud Harvester (5 of 5) + """ + + type = 'active' + + +class Effect2727(BaseEffect): + """ + gasCloudHarvestingMaxGroupSkillLevel + + Used by: + Skill: Gas Cloud Harvesting + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == 'Gas Cloud Harvester', + 'maxGroupActive', skill.level) + + +class Effect2734(BaseEffect): + """ + shipECMScanStrengthBonusCF + + Used by: + Variations of ship: Griffin (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('Gravimetric', 'Ladar', 'Radar', 'Magnetometric'): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scan{0}StrengthBonus'.format(type), + ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect2735(BaseEffect): + """ + boosterArmorHpPenalty + + Used by: + Implants named like: Booster (12 of 35) + """ + + attr = 'boosterArmorHPPenalty' + displayName = 'Armor Capacity' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.ship.boostItemAttr('armorHP', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2736(BaseEffect): + """ + boosterArmorRepairAmountPenalty + + Used by: + Implants named like: Drop Booster (3 of 4) + Implants named like: Mindflood Booster (3 of 4) + Implants named like: Sooth Sayer Booster (3 of 4) + """ + + attr = 'boosterArmorRepairAmountPenalty' + displayName = 'Armor Repair Amount' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Repair Unit', + 'armorDamageAmount', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2737(BaseEffect): + """ + boosterShieldCapacityPenalty + + Used by: + Implants from group: Booster (12 of 70) + """ + + attr = 'boosterShieldCapacityPenalty' + displayName = 'Shield Capacity' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.ship.boostItemAttr('shieldCapacity', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2739(BaseEffect): + """ + boosterTurretOptimalRangePenalty + + Used by: + Implants named like: Blue Pill Booster (3 of 5) + Implants named like: Mindflood Booster (3 of 4) + Implants named like: Sooth Sayer Booster (3 of 4) + """ + + attr = 'boosterTurretOptimalRangePenalty' + displayName = 'Turret Optimal Range' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2741(BaseEffect): + """ + boosterTurretFalloffPenalty + + Used by: + Implants named like: Drop Booster (3 of 4) + Implants named like: X Instinct Booster (3 of 4) + """ + + attr = 'boosterTurretFalloffPenalty' + displayName = 'Turret Falloff' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2745(BaseEffect): + """ + boosterCapacitorCapacityPenalty + + Used by: + Implants named like: Blue Pill Booster (3 of 5) + Implants named like: Exile Booster (3 of 4) + """ + + attr = 'boosterCapacitorCapacityPenalty' + displayName = 'Cap Capacity' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.ship.boostItemAttr('capacitorCapacity', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2746(BaseEffect): + """ + boosterMaxVelocityPenalty + + Used by: + Implants named like: Crash Booster (3 of 4) + Items from market group: Implants & Boosters > Booster > Booster Slot 02 (9 of 13) + """ + + attr = 'boosterMaxVelocityPenalty' + displayName = 'Velocity' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.ship.boostItemAttr('maxVelocity', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2747(BaseEffect): + """ + boosterTurretTrackingPenalty + + Used by: + Implants named like: Exile Booster (3 of 4) + Implants named like: Frentix Booster (3 of 4) + """ + + attr = 'boosterTurretTrackingPenalty' + displayName = 'Turret Tracking' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2748(BaseEffect): + """ + boosterMissileVelocityPenalty + + Used by: + Implants named like: Crash Booster (3 of 4) + Implants named like: X Instinct Booster (3 of 4) + """ + + attr = 'boosterMissileVelocityPenalty' + displayName = 'Missile Velocity' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2749(BaseEffect): + """ + boosterMissileExplosionVelocityPenalty + + Used by: + Implants named like: Blue Pill Booster (3 of 5) + """ + + attr = 'boosterAOEVelocityPenalty' + displayName = 'Missile Explosion Velocity' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeVelocity', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2756(BaseEffect): + """ + shipBonusECMStrengthBonusCC + + Used by: + Ship: Blackbird + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('Gravimetric', 'Magnetometric', 'Ladar', 'Radar'): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scan{0}StrengthBonus'.format(type), ship.getModifiedItemAttr('shipBonusCC'), + skill='Caldari Cruiser') + + +class Effect2757(BaseEffect): + """ + salvaging + + Used by: + Modules from group: Salvager (3 of 3) + """ + + type = 'active' + + +class Effect2760(BaseEffect): + """ + boosterModifyBoosterArmorPenalties + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) + Implants named like: grade Edge (10 of 12) + Skill: Neurotoxin Control + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + attrs = ('boosterArmorHPPenalty', 'boosterArmorRepairAmountPenalty') + for attr in attrs: + fit.boosters.filteredItemBoost(lambda booster: True, attr, + container.getModifiedItemAttr('boosterAttributeModifier') * level) + + +class Effect2763(BaseEffect): + """ + boosterModifyBoosterShieldPenalty + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) + Implants named like: grade Edge (10 of 12) + Skill: Neurotoxin Control + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + attrs = ('boosterShieldBoostAmountPenalty', 'boosterShieldCapacityPenalty', 'shieldBoostMultiplier') + for attr in attrs: + # shieldBoostMultiplier can be positive (Blue Pill) and negative value (other boosters) + # We're interested in decreasing only side-effects + fit.boosters.filteredItemBoost(lambda booster: booster.getModifiedItemAttr(attr) < 0, + attr, container.getModifiedItemAttr('boosterAttributeModifier') * level) + + +class Effect2766(BaseEffect): + """ + boosterModifyBoosterMaxVelocityAndCapacitorPenalty + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) + Implants named like: grade Edge (10 of 12) + Skill: Neurotoxin Control + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + attrs = ('boosterCapacitorCapacityPenalty', 'boosterMaxVelocityPenalty') + for attr in attrs: + fit.boosters.filteredItemBoost(lambda booster: True, attr, + container.getModifiedItemAttr('boosterAttributeModifier') * level) + + +class Effect2776(BaseEffect): + """ + boosterModifyBoosterMissilePenalty + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) + Implants named like: grade Edge (10 of 12) + Skill: Neurotoxin Control + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + attrs = ('boosterAOEVelocityPenalty', 'boosterMissileAOECloudPenalty', 'boosterMissileVelocityPenalty') + for attr in attrs: + fit.boosters.filteredItemBoost(lambda booster: True, attr, + container.getModifiedItemAttr('boosterAttributeModifier') * level) + + +class Effect2778(BaseEffect): + """ + boosterModifyBoosterTurretPenalty + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) + Implants named like: grade Edge (10 of 12) + Skill: Neurotoxin Control + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + attrs = ('boosterTurretFalloffPenalty', 'boosterTurretOptimalRangePenalty', 'boosterTurretTrackingPenalty') + for attr in attrs: + fit.boosters.filteredItemBoost(lambda booster: True, attr, + container.getModifiedItemAttr('boosterAttributeModifier') * level) + + +class Effect2791(BaseEffect): + """ + boosterMissileExplosionCloudPenaltyFixed + + Used by: + Implants named like: Exile Booster (3 of 4) + Implants named like: Mindflood Booster (3 of 4) + """ + + attr = 'boosterMissileAOECloudPenalty' + displayName = 'Missile Explosion Radius' + type = 'boosterSideEffect' + + @classmethod + def handler(cls, fit, booster, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeCloudSize', booster.getModifiedItemAttr(cls.attr)) + + +class Effect2792(BaseEffect): + """ + modifyArmorResonancePostPercentPassive + + Used by: + Modules named like: Anti Pump (32 of 32) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for type in ('kinetic', 'thermal', 'explosive', 'em'): + fit.ship.boostItemAttr('armor' + type.capitalize() + 'DamageResonance', + module.getModifiedItemAttr(type + 'DamageResistanceBonus') or 0, + stackingPenalties=True) + + +class Effect2794(BaseEffect): + """ + salvagingAccessDifficultyBonusEffectPassive + + Used by: + Modules from group: Rig Resource Processing (8 of 10) + Implant: Poteque 'Prospector' Salvaging SV-905 + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Salvaging'), + 'accessDifficultyBonus', container.getModifiedItemAttr('accessDifficultyBonus'), + position='post') + + +class Effect2795(BaseEffect): + """ + modifyShieldResonancePostPercentPassive + + Used by: + Modules named like: Anti Screen Reinforcer (32 of 32) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for type in ('kinetic', 'thermal', 'explosive', 'em'): + fit.ship.boostItemAttr('shield' + type.capitalize() + 'DamageResonance', + module.getModifiedItemAttr(type + 'DamageResistanceBonus') or 0, + stackingPenalties=True) + + +class Effect2796(BaseEffect): + """ + massReductionBonusPassive + + Used by: + Modules from group: Rig Anchor (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('mass', module.getModifiedItemAttr('massBonusPercentage'), stackingPenalties=True) + + +class Effect2797(BaseEffect): + """ + projectileWeaponSpeedMultiplyPassive + + Used by: + Modules named like: Projectile Burst Aerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect2798(BaseEffect): + """ + projectileWeaponDamageMultiplyPassive + + Used by: + Modules named like: Projectile Collision Accelerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect2799(BaseEffect): + """ + missileLauncherSpeedMultiplierPassive + + Used by: + Modules named like: Bay Loading Accelerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect2801(BaseEffect): + """ + energyWeaponSpeedMultiplyPassive + + Used by: + Modules named like: Energy Burst Aerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Energy Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect2802(BaseEffect): + """ + hybridWeaponDamageMultiplyPassive + + Used by: + Modules named like: Hybrid Collision Accelerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect2803(BaseEffect): + """ + energyWeaponDamageMultiplyPassive + + Used by: + Modules named like: Energy Collision Accelerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Energy Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect2804(BaseEffect): + """ + hybridWeaponSpeedMultiplyPassive + + Used by: + Modules named like: Hybrid Burst Aerator (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect2805(BaseEffect): + """ + shipBonusLargeEnergyWeaponDamageAB2 + + Used by: + Ship: Abaddon + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusAB2'), + skill='Amarr Battleship') + + +class Effect2809(BaseEffect): + """ + shipMissileAssaultMissileVelocityBonusCC2 + + Used by: + Ship: Caracal + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect2810(BaseEffect): + """ + eliteBonusHeavyGunshipAssaultMissileFlightTime1 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'explosionDelay', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect2812(BaseEffect): + """ + caldariShipECMBurstOptimalRangeCB3 + + Used by: + Ship: Scorpion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Burst Jammer', + 'ecmBurstRange', ship.getModifiedItemAttr('shipBonusCB3'), skill='Caldari Battleship') + + +class Effect2837(BaseEffect): + """ + armorHPBonusAdd + + Used by: + Modules from group: Armor Reinforcer (51 of 51) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('armorHP', module.getModifiedItemAttr('armorHPBonusAdd')) + + +class Effect2847(BaseEffect): + """ + trackingSpeedBonusPassiveRequiringGunneryTrackingSpeedBonus + + Used by: + Implants named like: Drop Booster (4 of 4) + Implants named like: Eifyr and Co. 'Gunslinger' Motion Prediction MR (6 of 6) + Implant: Antipharmakon Iokira + Implant: Ogdin's Eye Coordination Enhancer + Skill: Motion Prediction + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', container.getModifiedItemAttr('trackingSpeedBonus') * level) + + +class Effect2848(BaseEffect): + """ + accessDifficultyBonusModifierRequiringArchaelogy + + Used by: + Modules named like: Emission Scope Sharpener (8 of 8) + Implant: Poteque 'Prospector' Archaeology AC-905 + Implant: Poteque 'Prospector' Environmental Analysis EY-1005 + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemIncrease(lambda module: module.item.requiresSkill('Archaeology'), + 'accessDifficultyBonus', + container.getModifiedItemAttr('accessDifficultyBonusModifier'), position='post') + + +class Effect2849(BaseEffect): + """ + accessDifficultyBonusModifierRequiringHacking + + Used by: + Modules named like: Memetic Algorithm Bank (8 of 8) + Implant: Neural Lace 'Blackglass' Net Intrusion 920-40 + Implant: Poteque 'Prospector' Environmental Analysis EY-1005 + Implant: Poteque 'Prospector' Hacking HC-905 + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemIncrease(lambda c: c.item.requiresSkill('Hacking'), + 'accessDifficultyBonus', + container.getModifiedItemAttr('accessDifficultyBonusModifier'), position='post') + + +class Effect2850(BaseEffect): + """ + durationBonusForGroupAfterburner + + Used by: + Modules named like: Engine Thermal Shielding (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'duration', module.getModifiedItemAttr('durationBonus')) + + +class Effect2851(BaseEffect): + """ + missileDMGBonusPassive + + Used by: + Modules named like: Warhead Calefaction Catalyst (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + for dmgType in ('em', 'kinetic', 'explosive', 'thermal'): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + '%sDamage' % dmgType, + container.getModifiedItemAttr('missileDamageMultiplierBonus'), + stackingPenalties=True) + + +class Effect2853(BaseEffect): + """ + cloakingTargetingDelayBonusLRSMCloakingPassive + + Used by: + Modules named like: Targeting Systems Stabilizer (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda module: module.item.requiresSkill('Cloaking'), + 'cloakingTargetingDelay', module.getModifiedItemAttr('cloakingTargetingDelayBonus')) + + +class Effect2857(BaseEffect): + """ + cynosuralGeneration + + Used by: + Modules from group: Cynosural Field Generator (2 of 2) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('speedFactor')) + + +class Effect2865(BaseEffect): + """ + velocityBonusOnline + + Used by: + Modules from group: Entosis Link (6 of 6) + Modules from group: Nanofiber Internal Structure (7 of 7) + Modules from group: Overdrive Injector System (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('implantBonusVelocity'), + stackingPenalties=True) + + +class Effect2866(BaseEffect): + """ + biologyTimeBonusFixed + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Biology BY (2 of 2) + Skill: Biology + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.boosters.filteredItemBoost(lambda bst: True, 'boosterDuration', + container.getModifiedItemAttr('durationBonus') * level) + + +class Effect2867(BaseEffect): + """ + sentryDroneDamageBonus + + Used by: + Modules named like: Sentry Damage Augmentor (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplierBonus'), + stackingPenalties=True) + + +class Effect2868(BaseEffect): + """ + armorDamageAmountBonusCapitalArmorRepairers + + Used by: + Modules named like: Auxiliary Nano Pump (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), + 'armorDamageAmount', implant.getModifiedItemAttr('repairBonus'), + stackingPenalties=True) + + +class Effect2872(BaseEffect): + """ + missileVelocityBonusDefender + + Used by: + Implants named like: Zainou 'Snapshot' Defender Missiles DM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Defender Missiles'), + 'maxVelocity', container.getModifiedItemAttr('missileVelocityBonus')) + + +class Effect2881(BaseEffect): + """ + missileEMDmgBonusCruise3 + + Used by: + Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'emDamage', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2882(BaseEffect): + """ + missileExplosiveDmgBonusCruise3 + + Used by: + Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2883(BaseEffect): + """ + missileKineticDmgBonusCruise3 + + Used by: + Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2884(BaseEffect): + """ + missileThermalDmgBonusCruise3 + + Used by: + Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2885(BaseEffect): + """ + gasHarvestingCycleTimeModulesRequiringGasCloudHarvesting + + Used by: + Implants named like: Eifyr and Co. 'Alchemist' Gas Harvesting GH (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gas Cloud Harvesting'), + 'duration', implant.getModifiedItemAttr('durationBonus')) + + +class Effect2887(BaseEffect): + """ + missileEMDmgBonusRocket + + Used by: + Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'emDamage', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2888(BaseEffect): + """ + missileExplosiveDmgBonusRocket + + Used by: + Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2889(BaseEffect): + """ + missileKineticDmgBonusRocket + + Used by: + Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2890(BaseEffect): + """ + missileThermalDmgBonusRocket + + Used by: + Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2891(BaseEffect): + """ + missileEMDmgBonusStandard + + Used by: + Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'emDamage', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2892(BaseEffect): + """ + missileExplosiveDmgBonusStandard + + Used by: + Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2893(BaseEffect): + """ + missileKineticDmgBonusStandard + + Used by: + Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2894(BaseEffect): + """ + missileThermalDmgBonusStandard + + Used by: + Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2899(BaseEffect): + """ + missileEMDmgBonusHeavy + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'emDamage', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2900(BaseEffect): + """ + missileExplosiveDmgBonusHeavy + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2901(BaseEffect): + """ + missileKineticDmgBonusHeavy + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2902(BaseEffect): + """ + missileThermalDmgBonusHeavy + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2903(BaseEffect): + """ + missileEMDmgBonusHAM + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'emDamage', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2904(BaseEffect): + """ + missileExplosiveDmgBonusHAM + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2905(BaseEffect): + """ + missileKineticDmgBonusHAM + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2906(BaseEffect): + """ + missileThermalDmgBonusHAM + + Used by: + Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2907(BaseEffect): + """ + missileEMDmgBonusTorpedo + + Used by: + Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'emDamage', implant.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2908(BaseEffect): + """ + missileExplosiveDmgBonusTorpedo + + Used by: + Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosiveDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2909(BaseEffect): + """ + missileKineticDmgBonusTorpedo + + Used by: + Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'kineticDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2910(BaseEffect): + """ + missileThermalDmgBonusTorpedo + + Used by: + Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'thermalDamage', container.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect2911(BaseEffect): + """ + dataminerModuleDurationReduction + + Used by: + Implant: Poteque 'Prospector' Environmental Analysis EY-1005 + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Data Miners', + 'duration', implant.getModifiedItemAttr('durationBonus')) + + +class Effect2967(BaseEffect): + """ + skillTriageModuleConsumptionQuantityBonus + + Used by: + Skill: Tactical Logistics Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + amount = -skill.getModifiedItemAttr('consumptionQuantityBonus') + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), + 'consumptionQuantity', amount * skill.level) + + +class Effect2979(BaseEffect): + """ + skillRemoteHullRepairSystemsCapNeedBonus + + Used by: + Skill: Remote Hull Repair Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Hull Repair Systems'), + 'capacitorNeed', skill.getModifiedItemAttr('capNeedBonus') * skill.level) + + +class Effect2980(BaseEffect): + """ + skillCapitalRemoteHullRepairSystemsCapNeedBonus + + Used by: + Skill: Capital Remote Hull Repair Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Remote Hull Repair Systems'), + 'capacitorNeed', skill.getModifiedItemAttr('capNeedBonus') * skill.level) + + +class Effect2982(BaseEffect): + """ + skillRemoteECMDurationBonus + + Used by: + Skill: Burst Projector Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + # We need to make sure that the attribute exists, otherwise we add attributes that don't belong. See #927 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation') and + mod.item.getAttribute('duration'), + 'duration', + skill.getModifiedItemAttr('projECMDurationBonus') * skill.level) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation') and + mod.item.getAttribute('durationECMJammerBurstProjector'), + 'durationECMJammerBurstProjector', + skill.getModifiedItemAttr('projECMDurationBonus') * skill.level) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation') and + mod.item.getAttribute('durationTargetIlluminationBurstProjector'), + 'durationTargetIlluminationBurstProjector', + skill.getModifiedItemAttr('projECMDurationBonus') * skill.level) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation') and + mod.item.getAttribute('durationSensorDampeningBurstProjector'), + 'durationSensorDampeningBurstProjector', + skill.getModifiedItemAttr('projECMDurationBonus') * skill.level) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation') and + mod.item.getAttribute('durationWeaponDisruptionBurstProjector'), + 'durationWeaponDisruptionBurstProjector', + skill.getModifiedItemAttr('projECMDurationBonus') * skill.level) + + +class Effect3001(BaseEffect): + """ + overloadRofBonus + + Used by: + Modules from group: Missile Launcher Torpedo (22 of 22) + Items from market group: Ship Equipment > Turrets & Bays (429 of 883) + Module: Interdiction Sphere Launcher I + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('speed', module.getModifiedItemAttr('overloadRofBonus')) + + +class Effect3002(BaseEffect): + """ + overloadSelfDurationBonus + + Used by: + Modules from group: Ancillary Remote Shield Booster (4 of 4) + Modules from group: Capacitor Booster (59 of 59) + Modules from group: Energy Neutralizer (54 of 54) + Modules from group: Energy Nosferatu (54 of 54) + Modules from group: Hull Repair Unit (25 of 25) + Modules from group: Remote Armor Repairer (39 of 39) + Modules from group: Remote Capacitor Transmitter (41 of 41) + Modules from group: Remote Shield Booster (38 of 38) + Modules from group: Smart Bomb (118 of 118) + Modules from group: Warp Disrupt Field Generator (7 of 7) + Modules named like: Remote Repairer (56 of 56) + Module: Reactive Armor Hardener + Module: Target Spectrum Breaker + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('duration', module.getModifiedItemAttr('overloadSelfDurationBonus') or 0) + + +class Effect3024(BaseEffect): + """ + eliteBonusCoverOpsBombExplosiveDmg1 + + Used by: + Ship: Hound + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'explosiveDamage', ship.getModifiedItemAttr('eliteBonusCovertOps1'), + skill='Covert Ops') + + +class Effect3025(BaseEffect): + """ + overloadSelfDamageBonus + + Used by: + Modules from group: Energy Weapon (101 of 214) + Modules from group: Hybrid Weapon (105 of 221) + Modules from group: Precursor Weapon (15 of 15) + Modules from group: Projectile Weapon (99 of 165) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('damageMultiplier', module.getModifiedItemAttr('overloadDamageModifier')) + + +class Effect3026(BaseEffect): + """ + eliteBonusCoverOpsBombKineticDmg1 + + Used by: + Ship: Manticore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'kineticDamage', ship.getModifiedItemAttr('eliteBonusCovertOps1'), + skill='Covert Ops') + + +class Effect3027(BaseEffect): + """ + eliteBonusCoverOpsBombThermalDmg1 + + Used by: + Ship: Nemesis + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'thermalDamage', ship.getModifiedItemAttr('eliteBonusCovertOps1'), + skill='Covert Ops') + + +class Effect3028(BaseEffect): + """ + eliteBonusCoverOpsBombEmDmg1 + + Used by: + Ship: Purifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'emDamage', ship.getModifiedItemAttr('eliteBonusCovertOps1'), skill='Covert Ops') + + +class Effect3029(BaseEffect): + """ + overloadSelfEmHardeningBonus + + Used by: + Variations of module: Armor EM Hardener I (39 of 39) + Variations of module: EM Ward Field I (19 of 19) + Module: Civilian EM Ward Field + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('emDamageResistanceBonus', module.getModifiedItemAttr('overloadHardeningBonus')) + + +class Effect3030(BaseEffect): + """ + overloadSelfThermalHardeningBonus + + Used by: + Variations of module: Armor Thermal Hardener I (39 of 39) + Variations of module: Thermal Dissipation Field I (19 of 19) + Module: Civilian Thermal Dissipation Field + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('thermalDamageResistanceBonus', module.getModifiedItemAttr('overloadHardeningBonus')) + + +class Effect3031(BaseEffect): + """ + overloadSelfExplosiveHardeningBonus + + Used by: + Variations of module: Armor Explosive Hardener I (39 of 39) + Variations of module: Explosive Deflection Field I (19 of 19) + Module: Civilian Explosive Deflection Field + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('explosiveDamageResistanceBonus', module.getModifiedItemAttr('overloadHardeningBonus')) + + +class Effect3032(BaseEffect): + """ + overloadSelfKineticHardeningBonus + + Used by: + Variations of module: Armor Kinetic Hardener I (39 of 39) + Variations of module: Kinetic Deflection Field I (19 of 19) + Module: Civilian Kinetic Deflection Field + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('kineticDamageResistanceBonus', module.getModifiedItemAttr('overloadHardeningBonus')) + + +class Effect3035(BaseEffect): + """ + overloadSelfHardeningInvulnerabilityBonus + + Used by: + Modules named like: Capital Flex Hardener (9 of 9) + Variations of module: Adaptive Invulnerability Field I (17 of 17) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + for type in ('kinetic', 'thermal', 'explosive', 'em'): + module.boostItemAttr('%sDamageResistanceBonus' % type, + module.getModifiedItemAttr('overloadHardeningBonus')) + + +class Effect3036(BaseEffect): + """ + skillBombDeploymentModuleReactivationDelayBonus + + Used by: + Skill: Bomb Deployment + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Bomb', + 'moduleReactivationDelay', skill.getModifiedItemAttr('reactivationDelayBonus') * skill.level) + + +class Effect3046(BaseEffect): + """ + modifyMaxVelocityOfShipPassive + + Used by: + Modules from group: Expanded Cargohold (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('maxVelocity', module.getModifiedItemAttr('maxVelocityModifier'), stackingPenalties=True) + + +class Effect3047(BaseEffect): + """ + structureHPMultiplyPassive + + Used by: + Modules from group: Expanded Cargohold (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('hp', module.getModifiedItemAttr('structureHPMultiplier')) + + +class Effect3061(BaseEffect): + """ + heatDamageBonus + + Used by: + Modules from group: Shield Boost Amplifier (25 of 25) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'heatDamage', module.getModifiedItemAttr('heatDamageBonus')) + + +class Effect3169(BaseEffect): + """ + shieldTransportCpuNeedBonusEffect + + Used by: + Ships from group: Logistics (3 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'cpu', + src.getModifiedItemAttr('shieldTransportCpuNeedBonus')) + + +class Effect3172(BaseEffect): + """ + droneArmorDamageBonusEffect + + Used by: + Ships from group: Logistics (6 of 7) + Ship: Exequror + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + # This is actually level-less bonus, anyway you have to train cruisers 5 + # and will get 100% (20%/lvl as stated by description) + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Logistic Drone', + 'armorDamageAmount', ship.getModifiedItemAttr('droneArmorDamageAmountBonus')) + + +class Effect3173(BaseEffect): + """ + droneShieldBonusBonusEffect + + Used by: + Ships from group: Logistics (6 of 7) + Ship: Exequror + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + # This is actually level-less bonus, anyway you have to train cruisers 5 + # and will get 100% (20%/lvl as stated by description) + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Logistic Drone', + 'shieldBonus', ship.getModifiedItemAttr('droneShieldBonusBonus')) + + +class Effect3174(BaseEffect): + """ + overloadSelfRangeBonus + + Used by: + Modules from group: Stasis Grappler (7 of 7) + Modules from group: Stasis Web (19 of 19) + Modules from group: Warp Scrambler (54 of 55) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('maxRange', module.getModifiedItemAttr('overloadRangeBonus'), + stackingPenalties=True) + + +class Effect3175(BaseEffect): + """ + overloadSelfSpeedBonus + + Used by: + Modules from group: Propulsion Module (133 of 133) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('speedFactor', module.getModifiedItemAttr('overloadSpeedFactorBonus'), + stackingPenalties=True) + + +class Effect3182(BaseEffect): + """ + overloadSelfECMStrenghtBonus + + Used by: + Modules from group: Burst Jammer (11 of 11) + Modules from group: ECM (39 of 39) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + if 'projected' not in context: + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + module.boostItemAttr('scan{0}StrengthBonus'.format(scanType), + module.getModifiedItemAttr('overloadECMStrengthBonus'), + stackingPenalties=True) + + +class Effect3196(BaseEffect): + """ + thermodynamicsSkillDamageBonus + + Used by: + Skill: Thermodynamics + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: 'heatDamage' in mod.item.attributes, 'heatDamage', + skill.getModifiedItemAttr('thermodynamicsHeatDamage') * skill.level) + + +class Effect3200(BaseEffect): + """ + overloadSelfArmorDamageAmountDurationBonus + + Used by: + Modules from group: Ancillary Armor Repairer (7 of 7) + Modules from group: Armor Repair Unit (108 of 108) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('duration', module.getModifiedItemAttr('overloadSelfDurationBonus')) + module.boostItemAttr('armorDamageAmount', module.getModifiedItemAttr('overloadArmorDamageAmount'), + stackingPenalties=True) + + +class Effect3201(BaseEffect): + """ + overloadSelfShieldBonusDurationBonus + + Used by: + Modules from group: Ancillary Shield Booster (8 of 8) + Modules from group: Shield Booster (97 of 97) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('duration', module.getModifiedItemAttr('overloadSelfDurationBonus')) + module.boostItemAttr('shieldBonus', module.getModifiedItemAttr('overloadShieldBonus'), stackingPenalties=True) + + +class Effect3212(BaseEffect): + """ + missileSkillFoFAoeCloudSizeBonus + + Used by: + Implants named like: Zainou 'Snapshot' Auto Targeting Explosion Radius FR (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('FoF Missiles'), + 'aoeCloudSize', container.getModifiedItemAttr('aoeCloudSizeBonus') * level) + + +class Effect3234(BaseEffect): + """ + shipRocketExplosiveDmgAF + + Used by: + Ship: Anathema + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect3235(BaseEffect): + """ + shipRocketKineticDmgAF + + Used by: + Ship: Anathema + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect3236(BaseEffect): + """ + shipRocketThermalDmgAF + + Used by: + Ship: Anathema + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect3237(BaseEffect): + """ + shipRocketEmDmgAF + + Used by: + Ship: Anathema + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'emDamage', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect3241(BaseEffect): + """ + eliteBonusGunshipArmorEmResistance1 + + Used by: + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('eliteBonusGunship1'), + skill='Assault Frigates') + + +class Effect3242(BaseEffect): + """ + eliteBonusGunshipArmorThermalResistance1 + + Used by: + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('eliteBonusGunship1'), + skill='Assault Frigates') + + +class Effect3243(BaseEffect): + """ + eliteBonusGunshipArmorKineticResistance1 + + Used by: + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('eliteBonusGunship1'), + skill='Assault Frigates') + + +class Effect3244(BaseEffect): + """ + eliteBonusGunshipArmorExplosiveResistance1 + + Used by: + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('eliteBonusGunship1'), + skill='Assault Frigates') + + +class Effect3249(BaseEffect): + """ + shipCapRecharge2AF + + Used by: + Ship: Anathema + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('rechargeRate', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect3264(BaseEffect): + """ + skillIndustrialReconfigurationConsumptionQuantityBonus + + Used by: + Skill: Industrial Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + amount = -skill.getModifiedItemAttr('consumptionQuantityBonus') + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), + 'consumptionQuantity', amount * skill.level) + + +class Effect3267(BaseEffect): + """ + shipConsumptionQuantityBonusIndustrialReconfigurationORECapital1 + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Industrial Reconfiguration'), + 'consumptionQuantity', ship.getModifiedItemAttr('shipBonusORECapital1'), + skill='Capital Industrial Ships') + + +class Effect3297(BaseEffect): + """ + shipEnergyNeutralizerTransferAmountBonusAB + + Used by: + Ship: Bhaalgorn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', ship.getModifiedItemAttr('shipBonusAB'), + skill='Amarr Battleship') + + +class Effect3298(BaseEffect): + """ + shipEnergyNeutralizerTransferAmountBonusAC + + Used by: + Ship: Ashimmu + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', ship.getModifiedItemAttr('shipBonusAC'), + skill='Amarr Cruiser') + + +class Effect3299(BaseEffect): + """ + shipEnergyNeutralizerTransferAmountBonusAF + + Used by: + Ship: Caedes + Ship: Cruor + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', ship.getModifiedItemAttr('shipBonusAF'), + skill='Amarr Frigate') + + +class Effect3313(BaseEffect): + """ + cloneVatMaxJumpCloneBonusSkillNew + + Used by: + Skill: Cloning Facility Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.ship.boostItemAttr('maxJumpClones', skill.getModifiedItemAttr('maxJumpClonesBonus') * skill.level) + + +class Effect3331(BaseEffect): + """ + eliteBonusCommandShipArmorHP1 + + Used by: + Ship: Damnation + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorHP', ship.getModifiedItemAttr('eliteBonusCommandShips1'), skill='Command Ships') + + +class Effect3335(BaseEffect): + """ + shipArmorEmResistanceMC2 + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect3336(BaseEffect): + """ + shipArmorExplosiveResistanceMC2 + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect3339(BaseEffect): + """ + shipArmorKineticResistanceMC2 + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect3340(BaseEffect): + """ + shipArmorThermalResistanceMC2 + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect3343(BaseEffect): + """ + eliteBonusHeavyInterdictorsProjectileFalloff1 + + Used by: + Ship: Broadsword + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors1'), + skill='Heavy Interdiction Cruisers') + + +class Effect3355(BaseEffect): + """ + eliteBonusHeavyInterdictorHeavyMissileVelocityBonus1 + + Used by: + Ship: Onyx + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors1'), + skill='Heavy Interdiction Cruisers') + + +class Effect3356(BaseEffect): + """ + eliteBonusHeavyInterdictorHeavyAssaultMissileVelocityBonus + + Used by: + Ship: Onyx + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors1'), + skill='Heavy Interdiction Cruisers') + + +class Effect3357(BaseEffect): + """ + eliteBonusHeavyInterdictorLightMissileVelocityBonus + + Used by: + Ship: Onyx + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors1'), + skill='Heavy Interdiction Cruisers') + + +class Effect3366(BaseEffect): + """ + shipRemoteSensorDampenerCapNeedGF + + Used by: + Ship: Keres + Ship: Maulus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect3367(BaseEffect): + """ + eliteBonusElectronicAttackShipWarpScramblerMaxRange1 + + Used by: + Ship: Keres + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'maxRange', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip1'), + skill='Electronic Attack Ships') + + +class Effect3369(BaseEffect): + """ + eliteBonusElectronicAttackShipECMOptimalRange1 + + Used by: + Ship: Kitsune + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'maxRange', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip1'), + skill='Electronic Attack Ships') + + +class Effect3370(BaseEffect): + """ + eliteBonusElectronicAttackShipStasisWebMaxRange1 + + Used by: + Ship: Hyena + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip1'), + skill='Electronic Attack Ships') + + +class Effect3371(BaseEffect): + """ + eliteBonusElectronicAttackShipWarpScramblerCapNeed2 + + Used by: + Ship: Keres + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'capacitorNeed', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip2'), + skill='Electronic Attack Ships') + + +class Effect3374(BaseEffect): + """ + eliteBonusElectronicAttackShipSignatureRadius2 + + Used by: + Ship: Hyena + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('signatureRadius', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip2'), + skill='Electronic Attack Ships') + + +class Effect3379(BaseEffect): + """ + implantHardwiringABcapacitorNeed + + Used by: + Implants named like: Eifyr and Co. 'Rogue' Fuel Conservation FC (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'capacitorNeed', implant.getModifiedItemAttr('capNeedBonus')) + + +class Effect3380(BaseEffect): + """ + warpDisruptSphere + + Used by: + Modules from group: Warp Disrupt Field Generator (7 of 7) + """ + + runTime = 'early' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + + if 'projected' in context: + fit.ship.increaseItemAttr('warpScrambleStatus', module.getModifiedItemAttr('warpScrambleStrength')) + if module.charge is not None and module.charge.ID == 45010: + for mod in fit.modules: + if not mod.isEmpty and mod.item.requiresSkill('High Speed Maneuvering') and mod.state > FittingModuleState.ONLINE: + mod.state = FittingModuleState.ONLINE + if not mod.isEmpty and mod.item.requiresSkill('Micro Jump Drive Operation') and mod.state > FittingModuleState.ONLINE: + mod.state = FittingModuleState.ONLINE + else: + if module.charge is None: + fit.ship.boostItemAttr('mass', module.getModifiedItemAttr('massBonusPercentage')) + fit.ship.boostItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadiusBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'speedBoostFactor', module.getModifiedItemAttr('speedBoostFactorBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'speedFactor', module.getModifiedItemAttr('speedFactorBonus')) + + fit.ship.forceItemAttr('disallowAssistance', 1) + + +class Effect3392(BaseEffect): + """ + eliteBonusBlackOpsLargeEnergyTurretTracking1 + + Used by: + Ship: Redeemer + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusBlackOps1'), skill='Black Ops') + + +class Effect3403(BaseEffect): + """ + eliteBonusBlackOpsCloakVelocity2 + + Used by: + Ships from group: Black Ops (5 of 5) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + if fit.extraAttributes['cloaked']: + fit.ship.multiplyItemAttr('maxVelocity', ship.getModifiedItemAttr('eliteBonusBlackOps2'), skill='Black Ops') + + +class Effect3406(BaseEffect): + """ + eliteBonusBlackOpsMaxVelocity1 + + Used by: + Ship: Panther + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('eliteBonusBlackOps1'), skill='Black Ops') + + +class Effect3415(BaseEffect): + """ + eliteBonusViolatorsLargeEnergyTurretDamageRole1 + + Used by: + Ship: Paladin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect3416(BaseEffect): + """ + eliteBonusViolatorsLargeHybridTurretDamageRole1 + + Used by: + Ship: Kronos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect3417(BaseEffect): + """ + eliteBonusViolatorsLargeProjectileTurretDamageRole1 + + Used by: + Ship: Vargur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect3424(BaseEffect): + """ + eliteBonusViolatorsLargeHybridTurretTracking1 + + Used by: + Ship: Kronos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusViolators1'), skill='Marauders') + + +class Effect3425(BaseEffect): + """ + eliteBonusViolatorsLargeProjectileTurretTracking1 + + Used by: + Ship: Vargur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusViolators1'), skill='Marauders') + + +class Effect3427(BaseEffect): + """ + eliteBonusViolatorsTractorBeamMaxRangeRole2 + + Used by: + Ships from group: Marauder (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', + 'maxRange', ship.getModifiedItemAttr('eliteBonusViolatorsRole2')) + + +class Effect3439(BaseEffect): + """ + eliteBonusViolatorsEwTargetPainting1 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'signatureRadiusBonus', ship.getModifiedItemAttr('eliteBonusViolators1'), + skill='Marauders') + + +class Effect3447(BaseEffect): + """ + shipBonusPTFalloffMB1 + + Used by: + Ship: Marshal + Ship: Vargur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect3466(BaseEffect): + """ + eliteBonusElectronicAttackShipRechargeRate2 + + Used by: + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('rechargeRate', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip2'), + skill='Electronic Attack Ships') + + +class Effect3467(BaseEffect): + """ + eliteBonusElectronicAttackShipCapacitorCapacity2 + + Used by: + Ship: Kitsune + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('capacitorCapacity', ship.getModifiedItemAttr('eliteBonusElectronicAttackShip2'), + skill='Electronic Attack Ships') + + +class Effect3468(BaseEffect): + """ + eliteBonusHeavyInterdictorsWarpDisruptFieldGeneratorWarpScrambleRange2 + + Used by: + Ships from group: Heavy Interdiction Cruiser (5 of 5) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Disrupt Field Generator', + 'warpScrambleRange', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors2'), + skill='Heavy Interdiction Cruisers') + + +class Effect3473(BaseEffect): + """ + eliteBonusViolatorsTractorBeamMaxTractorVelocityRole3 + + Used by: + Ships from group: Marauder (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', + 'maxTractorVelocity', ship.getModifiedItemAttr('eliteBonusViolatorsRole3')) + + +class Effect3478(BaseEffect): + """ + shipLaserDamagePirateBattleship + + Used by: + Ship: Bhaalgorn + Ship: Nightmare + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect3480(BaseEffect): + """ + shipTrackingBonusAB + + Used by: + Ship: Nightmare + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusAB2'), skill='Amarr Battleship') + + +class Effect3483(BaseEffect): + """ + shipBonusMediumEnergyTurretDamagePirateFaction + + Used by: + Ship: Ashimmu + Ship: Fiend + Ship: Gnosis + Ship: Phantasm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect3484(BaseEffect): + """ + shipBonusMediumEnergyTurretTrackingAC2 + + Used by: + Ship: Fiend + Ship: Phantasm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect3487(BaseEffect): + """ + shipBonusSmallEnergyTurretDamagePirateFaction + + Used by: + Ship: Caedes + Ship: Confessor + Ship: Cruor + Ship: Imp + Ship: Succubus + Ship: Sunesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect3489(BaseEffect): + """ + shipBonusSmallEnergyTurretTracking2AF + + Used by: + Ship: Imp + Ship: Succubus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect3493(BaseEffect): + """ + rorqualCargoScanRangeBonus + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Cargo Scanner', + 'cargoScanRange', ship.getModifiedItemAttr('cargoScannerRangeBonus')) + + +class Effect3494(BaseEffect): + """ + rorqualSurveyScannerRangeBonus + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Survey Scanner', + 'surveyScanRange', ship.getModifiedItemAttr('surveyScannerRangeBonus')) + + +class Effect3495(BaseEffect): + """ + shipCapPropulsionJamming + + Used by: + Ships from group: Interceptor (10 of 10) + Ship: Atron + Ship: Condor + Ship: Executioner + Ship: Slasher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + groups = ('Stasis Web', 'Warp Scrambler') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'capacitorNeed', ship.getModifiedItemAttr('eliteBonusInterceptorRole')) + + +class Effect3496(BaseEffect): + """ + setBonusThukker + + Used by: + Implants named like: grade Nomad (12 of 12) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'agilityBonus', implant.getModifiedItemAttr('implantSetThukker')) + + +class Effect3498(BaseEffect): + """ + setBonusSisters + + Used by: + Implants named like: grade Virtue (12 of 12) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'scanStrengthBonus', implant.getModifiedItemAttr('implantSetSisters')) + + +class Effect3499(BaseEffect): + """ + setBonusSyndicate + + Used by: + Implants named like: grade Edge (12 of 12) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'boosterAttributeModifier', + implant.getModifiedItemAttr('implantSetSyndicate')) + + +class Effect3513(BaseEffect): + """ + setBonusMordus + + Used by: + Implants named like: grade Centurion (12 of 12) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'rangeSkillBonus', implant.getModifiedItemAttr('implantSetMordus')) + + +class Effect3514(BaseEffect): + """ + Interceptor2WarpScrambleRange + + Used by: + Ships from group: Interceptor (6 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'maxRange', ship.getModifiedItemAttr('eliteBonusInterceptor2'), skill='Interceptors') + + +class Effect3519(BaseEffect): + """ + weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringBombLauncher + + Used by: + Skill: Weapon Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Bomb Deployment'), + 'cpu', skill.getModifiedItemAttr('cpuNeedBonus') * skill.level) + + +class Effect3520(BaseEffect): + """ + skillAdvancedWeaponUpgradesPowerNeedBonusBombLaunchers + + Used by: + Skill: Advanced Weapon Upgrades + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Bomb Deployment'), + 'power', skill.getModifiedItemAttr('powerNeedBonus') * skill.level) + + +class Effect3526(BaseEffect): + """ + cynosuralTheoryConsumptionBonus + + Used by: + Ships from group: Force Recon Ship (8 of 9) + Skill: Cynosural Field Theory + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Cynosural Field Generator', + 'consumptionQuantity', + container.getModifiedItemAttr('consumptionQuantityBonusPercentage') * level) + + +class Effect3530(BaseEffect): + """ + eliteBonusBlackOpsAgiliy1 + + Used by: + Ship: Sin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('eliteBonusBlackOps1'), skill='Black Ops') + + +class Effect3532(BaseEffect): + """ + skillJumpDriveConsumptionAmountBonusPercentage + + Used by: + Skill: Jump Fuel Conservation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.ship.boostItemAttr('jumpDriveConsumptionAmount', + skill.getModifiedItemAttr('consumptionQuantityBonusPercentage') * skill.level) + + +class Effect3561(BaseEffect): + """ + ewSkillTrackingDisruptionTrackingSpeedBonus + + Used by: + Modules named like: Tracking Diagnostic Subroutines (8 of 8) + Skill: Weapon Destabilization + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Weapon Disruptor', + 'trackingSpeedBonus', + container.getModifiedItemAttr('scanSkillEwStrengthBonus') * level) + + +class Effect3568(BaseEffect): + """ + eliteBonusLogisticsTrackingLinkMaxRangeBonus1 + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'maxRangeBonus', ship.getModifiedItemAttr('eliteBonusLogistics1'), + skill='Logistics Cruisers') + + +class Effect3569(BaseEffect): + """ + eliteBonusLogisticsTrackingLinkMaxRangeBonus2 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'maxRangeBonus', ship.getModifiedItemAttr('eliteBonusLogistics2'), + skill='Logistics Cruisers') + + +class Effect3570(BaseEffect): + """ + eliteBonusLogisticsTrackingLinkTrackingSpeedBonus2 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'trackingSpeedBonus', ship.getModifiedItemAttr('eliteBonusLogistics2'), + skill='Logistics Cruisers') + + +class Effect3571(BaseEffect): + """ + eliteBonusLogisticsTrackingLinkTrackingSpeedBonus1 + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'trackingSpeedBonus', ship.getModifiedItemAttr('eliteBonusLogistics1'), + skill='Logistics Cruisers') + + +class Effect3586(BaseEffect): + """ + ewSkillSignalSuppressionScanResolutionBonus + + Used by: + Modules named like: Inverted Signal Field Projector (8 of 8) + Skill: Signal Suppression + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalized = False if 'skill' in context else True + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'scanResolutionBonus', + container.getModifiedItemAttr('scanSkillEwStrengthBonus') * level, + stackingPenalties=penalized) + + +class Effect3587(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerMaxTargetRangeBonusGC2 + + Used by: + Variations of ship: Celestis (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'maxTargetRangeBonus', ship.getModifiedItemAttr('shipBonusGC2'), + skill='Gallente Cruiser') + + +class Effect3588(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerMaxTargetRangeBonusGF2 + + Used by: + Ship: Keres + Ship: Maulus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'maxTargetRangeBonus', ship.getModifiedItemAttr('shipBonusGF2'), + skill='Gallente Frigate') + + +class Effect3589(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerScanResolutionBonusGF2 + + Used by: + Ship: Keres + Ship: Maulus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'scanResolutionBonus', ship.getModifiedItemAttr('shipBonusGF2'), + skill='Gallente Frigate') + + +class Effect3590(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerScanResolutionBonusGC2 + + Used by: + Variations of ship: Celestis (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'scanResolutionBonus', ship.getModifiedItemAttr('shipBonusGC2'), + skill='Gallente Cruiser') + + +class Effect3591(BaseEffect): + """ + ewSkillSignalSuppressionMaxTargetRangeBonus + + Used by: + Modules named like: Inverted Signal Field Projector (8 of 8) + Skill: Signal Suppression + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'maxTargetRangeBonus', + container.getModifiedItemAttr('scanSkillEwStrengthBonus') * level) + + +class Effect3592(BaseEffect): + """ + eliteBonusJumpFreighterHullHP1 + + Used by: + Ships from group: Jump Freighter (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('hp', ship.getModifiedItemAttr('eliteBonusJumpFreighter1'), skill='Jump Freighters') + + +class Effect3593(BaseEffect): + """ + eliteBonusJumpFreighterJumpDriveConsumptionAmount2 + + Used by: + Ships from group: Jump Freighter (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('jumpDriveConsumptionAmount', ship.getModifiedItemAttr('eliteBonusJumpFreighter2'), + skill='Jump Freighters') + + +class Effect3597(BaseEffect): + """ + scriptSensorBoosterScanResolutionBonusBonus + + Used by: + Charges from group: Sensor Booster Script (3 of 3) + Charges from group: Sensor Dampener Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('scanResolutionBonus', module.getModifiedChargeAttr('scanResolutionBonusBonus')) + + +class Effect3598(BaseEffect): + """ + scriptSensorBoosterMaxTargetRangeBonusBonus + + Used by: + Charges from group: Sensor Booster Script (3 of 3) + Charges from group: Sensor Dampener Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('maxTargetRangeBonus', module.getModifiedChargeAttr('maxTargetRangeBonusBonus')) + + +class Effect3599(BaseEffect): + """ + scriptTrackingComputerTrackingSpeedBonusBonus + + Used by: + Charges from group: Tracking Disruption Script (2 of 2) + Charges from group: Tracking Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('trackingSpeedBonus', module.getModifiedChargeAttr('trackingSpeedBonusBonus')) + + +class Effect3600(BaseEffect): + """ + scriptTrackingComputerMaxRangeBonusBonus + + Used by: + Charges from group: Tracking Disruption Script (2 of 2) + Charges from group: Tracking Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('maxRangeBonus', module.getModifiedChargeAttr('maxRangeBonusBonus')) + + +class Effect3601(BaseEffect): + """ + scriptWarpDisruptionFieldGeneratorSetDisallowInEmpireSpace + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.forceItemAttr('disallowInEmpireSpace', module.getModifiedChargeAttr('disallowInEmpireSpace')) + + +class Effect3602(BaseEffect): + """ + scriptDurationBonus + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('duration', module.getModifiedChargeAttr('durationBonus')) + + +class Effect3617(BaseEffect): + """ + scriptSignatureRadiusBonusBonus + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('signatureRadiusBonus', module.getModifiedChargeAttr('signatureRadiusBonusBonus')) + + +class Effect3618(BaseEffect): + """ + scriptMassBonusPercentageBonus + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('massBonusPercentage', module.getModifiedChargeAttr('massBonusPercentageBonus')) + + +class Effect3619(BaseEffect): + """ + scriptSpeedBoostFactorBonusBonus + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('speedBoostFactorBonus', module.getModifiedChargeAttr('speedBoostFactorBonusBonus')) + + +class Effect3620(BaseEffect): + """ + scriptSpeedFactorBonusBonus + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('speedFactorBonus', module.getModifiedChargeAttr('speedFactorBonusBonus')) + + +class Effect3648(BaseEffect): + """ + scriptWarpScrambleRangeBonus + + Used by: + Charges from group: Warp Disruption Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('warpScrambleRange', module.getModifiedChargeAttr('warpScrambleRangeBonus')) + + +class Effect3649(BaseEffect): + """ + eliteBonusViolatorsLargeEnergyTurretDamage1 + + Used by: + Ship: Paladin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusViolators1'), + skill='Marauders') + + +class Effect3650(BaseEffect): + """ + ewGroupRsdMaxRangeBonus + + Used by: + Implants named like: grade Centurion (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'maxRange', implant.getModifiedItemAttr('rangeSkillBonus')) + + +class Effect3651(BaseEffect): + """ + ewGroupTpMaxRangeBonus + + Used by: + Implants named like: grade Centurion (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'maxRange', implant.getModifiedItemAttr('rangeSkillBonus')) + + +class Effect3652(BaseEffect): + """ + ewGroupTdMaxRangeBonus + + Used by: + Implants named like: grade Centurion (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Weapon Disruptor', + 'maxRange', implant.getModifiedItemAttr('rangeSkillBonus')) + + +class Effect3653(BaseEffect): + """ + ewGroupEcmBurstMaxRangeBonus + + Used by: + Implants named like: grade Centurion (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Burst Projectors', + 'maxRange', implant.getModifiedItemAttr('rangeSkillBonus')) + + +class Effect3655(BaseEffect): + """ + gunneryMaxRangeBonusOnline + + Used by: + Modules from group: Tracking Enhancer (10 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + + +class Effect3656(BaseEffect): + """ + gunneryTrackingSpeedBonusOnline + + Used by: + Modules from group: Tracking Enhancer (10 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True) + + +class Effect3657(BaseEffect): + """ + shipScanResolutionBonusOnline + + Used by: + Modules from group: Signal Amplifier (7 of 7) + Structure Modules from group: Structure Signal Amplifier (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True) + + +class Effect3659(BaseEffect): + """ + shipMaxTargetRangeBonusOnline + + Used by: + Modules from group: Signal Amplifier (7 of 7) + Structure Modules from group: Structure Signal Amplifier (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True) + + +class Effect3660(BaseEffect): + """ + shipMaxLockedTargetsBonusAddOnline + + Used by: + Modules from group: Signal Amplifier (7 of 7) + Structure Modules from group: Structure Signal Amplifier (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('maxLockedTargets', module.getModifiedItemAttr('maxLockedTargetsBonus')) + + +class Effect3668(BaseEffect): + """ + miningLaserRangeBonus + + Used by: + Implants named like: grade Harvest (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mining Laser', + 'maxRange', implant.getModifiedItemAttr('maxRangeBonus')) + + +class Effect3669(BaseEffect): + """ + frequencyMiningLaserMaxRangeBonus + + Used by: + Implants named like: grade Harvest (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Frequency Mining Laser', + 'maxRange', implant.getModifiedItemAttr('maxRangeBonus')) + + +class Effect3670(BaseEffect): + """ + stripMinerMaxRangeBonus + + Used by: + Implants named like: grade Harvest (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Strip Miner', + 'maxRange', implant.getModifiedItemAttr('maxRangeBonus')) + + +class Effect3671(BaseEffect): + """ + gasHarvesterMaxRangeBonus + + Used by: + Implants named like: grade Harvest (10 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Gas Cloud Harvester', + 'maxRange', implant.getModifiedItemAttr('maxRangeBonus')) + + +class Effect3672(BaseEffect): + """ + setBonusOre + + Used by: + Implants named like: grade Harvest (12 of 12) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'maxRangeBonus', implant.getModifiedItemAttr('implantSetORE')) + + +class Effect3677(BaseEffect): + """ + shipBonusLargeEnergyTurretMaxRangeAB2 + + Used by: + Ship: Apocalypse + Ship: Apocalypse Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusAB2'), skill='Amarr Battleship') + + +class Effect3678(BaseEffect): + """ + eliteBonusJumpFreighterShieldHP1 + + Used by: + Ship: Nomad + Ship: Rhea + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldCapacity', ship.getModifiedItemAttr('eliteBonusJumpFreighter1'), + skill='Jump Freighters') + + +class Effect3679(BaseEffect): + """ + eliteBonusJumpFreighterArmorHP1 + + Used by: + Ship: Anshar + Ship: Ark + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorHP', ship.getModifiedItemAttr('eliteBonusJumpFreighter1'), skill='Jump Freighters') + + +class Effect3680(BaseEffect): + """ + freighterAgilityBonusC1 + + Used by: + Ship: Rhea + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('freighterBonusC1'), skill='Caldari Freighter') + + +class Effect3681(BaseEffect): + """ + freighterAgilityBonusM1 + + Used by: + Ship: Nomad + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('freighterBonusM1'), skill='Minmatar Freighter') + + +class Effect3682(BaseEffect): + """ + freighterAgilityBonusG1 + + Used by: + Ship: Anshar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('freighterBonusG1'), skill='Gallente Freighter') + + +class Effect3683(BaseEffect): + """ + freighterAgilityBonusA1 + + Used by: + Ship: Ark + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('freighterBonusA1'), skill='Amarr Freighter') + + +class Effect3686(BaseEffect): + """ + scriptTrackingComputerFalloffBonusBonus + + Used by: + Charges from group: Tracking Disruption Script (2 of 2) + Charges from group: Tracking Script (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('falloffBonus', module.getModifiedChargeAttr('falloffBonusBonus')) + + +class Effect3703(BaseEffect): + """ + shipMissileLauncherSpeedBonusMC2 + + Used by: + Ship: Bellicose + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + groups = ('Missile Launcher Rapid Light', 'Missile Launcher Heavy', 'Missile Launcher Heavy Assault') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'speed', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect3705(BaseEffect): + """ + shipHybridTurretROFBonusGC2 + + Used by: + Ship: Exequror Navy Issue + Ship: Phobos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect3706(BaseEffect): + """ + shipBonusProjectileTrackingMC2 + + Used by: + Ship: Stabber Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect3726(BaseEffect): + """ + agilityMultiplierEffectPassive + + Used by: + Modules named like: Polycarbon Engine Housing (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('agility', module.getModifiedItemAttr('agilityBonus'), stackingPenalties=True) + + +class Effect3727(BaseEffect): + """ + velocityBonusPassive + + Used by: + Modules named like: Polycarbon Engine Housing (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('implantBonusVelocity'), + stackingPenalties=True) + + +class Effect3739(BaseEffect): + """ + zColinOrcaTractorRangeBonus + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', 'maxRange', + src.getModifiedItemAttr('roleBonusTractorBeamRange')) + + +class Effect3740(BaseEffect): + """ + zColinOrcaTractorVelocityBonus + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', 'maxTractorVelocity', + ship.getModifiedItemAttr('roleBonusTractorBeamVelocity')) + + +class Effect3742(BaseEffect): + """ + cargoAndOreHoldCapacityBonusICS1 + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('specialOreHoldCapacity', + src.getModifiedItemAttr('shipBonusICS1'), + skill='Industrial Command Ships') + + fit.ship.boostItemAttr('capacity', + src.getModifiedItemAttr('shipBonusICS1'), + skill='Industrial Command Ships') + + +class Effect3744(BaseEffect): + """ + miningForemanBurstBonusICS2 + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff4Value', + src.getModifiedItemAttr('shipBonusICS2'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff1Value', + src.getModifiedItemAttr('shipBonusICS2'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'buffDuration', + src.getModifiedItemAttr('shipBonusICS2'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff3Value', + src.getModifiedItemAttr('shipBonusICS2'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff2Value', + src.getModifiedItemAttr('shipBonusICS2'), skill='Industrial Command Ships') + + +class Effect3745(BaseEffect): + """ + zColinOrcaSurveyScannerBonus + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Survey Scanner', 'surveyScanRange', + src.getModifiedItemAttr('roleBonusSurveyScannerRange')) + + +class Effect3765(BaseEffect): + """ + covertOpsStealthBomberSiegeMissileLauncherPowerNeedBonus + + Used by: + Ships from group: Stealth Bomber (5 of 5) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', + 'power', ship.getModifiedItemAttr('stealthBomberLauncherPower')) + + +class Effect3766(BaseEffect): + """ + interceptorMWDSignatureRadiusBonus + + Used by: + Ships from group: Interceptor (10 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', ship.getModifiedItemAttr('eliteBonusInterceptor'), + skill='Interceptors') + + +class Effect3767(BaseEffect): + """ + eliteBonusCommandShipsHeavyMissileExplosionVelocityCS2 + + Used by: + Ship: Claymore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'aoeVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect3771(BaseEffect): + """ + armorHPBonusAddPassive + + Used by: + Subsystems from group: Defensive Systems (9 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('armorHP', module.getModifiedItemAttr('armorHPBonusAdd') or 0) + + +class Effect3773(BaseEffect): + """ + hardPointModifierEffect + + Used by: + Subsystems from group: Offensive Systems (12 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('turretSlotsLeft', module.getModifiedItemAttr('turretHardPointModifier')) + fit.ship.increaseItemAttr('launcherSlotsLeft', module.getModifiedItemAttr('launcherHardPointModifier')) + + +class Effect3774(BaseEffect): + """ + slotModifier + + Used by: + Items from category: Subsystem (48 of 48) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('hiSlots', module.getModifiedItemAttr('hiSlotModifier')) + fit.ship.increaseItemAttr('medSlots', module.getModifiedItemAttr('medSlotModifier')) + fit.ship.increaseItemAttr('lowSlots', module.getModifiedItemAttr('lowSlotModifier')) + + +class Effect3782(BaseEffect): + """ + powerOutputAddPassive + + Used by: + Subsystems from group: Offensive Systems (8 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('powerOutput', module.getModifiedItemAttr('powerOutput')) + + +class Effect3783(BaseEffect): + """ + cpuOutputAddCpuOutputPassive + + Used by: + Subsystems from group: Offensive Systems (8 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('cpuOutput', module.getModifiedItemAttr('cpuOutput')) + + +class Effect3797(BaseEffect): + """ + droneBandwidthAddPassive + + Used by: + Subsystems from group: Offensive Systems (12 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('droneBandwidth', module.getModifiedItemAttr('droneBandwidth')) + + +class Effect3799(BaseEffect): + """ + droneCapacityAdddroneCapacityPassive + + Used by: + Subsystems from group: Offensive Systems (12 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('droneCapacity', module.getModifiedItemAttr('droneCapacity')) + + +class Effect3807(BaseEffect): + """ + maxTargetRangeAddPassive + + Used by: + Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRange')) + + +class Effect3808(BaseEffect): + """ + signatureRadiusAddPassive + + Used by: + Subsystems from group: Defensive Systems (8 of 12) + Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadius')) + + +class Effect3810(BaseEffect): + """ + capacityAddPassive + + Used by: + Subsystems named like: Defensive Covert Reconfiguration (4 of 4) + Subsystem: Legion Defensive - Nanobot Injector + """ + + type = 'passive' + + @staticmethod + def handler(fit, subsystem, context): + fit.ship.increaseItemAttr('capacity', subsystem.getModifiedItemAttr('cargoCapacityAdd') or 0) + + +class Effect3811(BaseEffect): + """ + capacitorCapacityAddPassive + + Used by: + Items from category: Subsystem (20 of 48) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('capacitorCapacity', module.getModifiedItemAttr('capacitorCapacity') or 0) + + +class Effect3831(BaseEffect): + """ + shieldCapacityAddPassive + + Used by: + Subsystems from group: Defensive Systems (8 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('shieldCapacity', module.getModifiedItemAttr('shieldCapacity')) + + +class Effect3857(BaseEffect): + """ + subsystemBonusAmarrPropulsionMaxVelocity + + Used by: + Subsystem: Legion Propulsion - Intercalated Nanofibers + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('subsystemBonusAmarrPropulsion'), + skill='Amarr Propulsion Systems') + + +class Effect3859(BaseEffect): + """ + subsystemBonusCaldariPropulsionMaxVelocity + + Used by: + Subsystem: Tengu Propulsion - Chassis Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('subsystemBonusCaldariPropulsion'), + skill='Caldari Propulsion Systems') + + +class Effect3860(BaseEffect): + """ + subsystemBonusMinmatarPropulsionMaxVelocity + + Used by: + Subsystem: Loki Propulsion - Intercalated Nanofibers + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('subsystemBonusMinmatarPropulsion'), + skill='Minmatar Propulsion Systems') + + +class Effect3861(BaseEffect): + """ + subsystemBonusMinmatarPropulsionAfterburnerSpeedFactor + + Used by: + Subsystem: Loki Propulsion - Wake Limiter + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'speedFactor', module.getModifiedItemAttr('subsystemBonusMinmatarPropulsion'), + skill='Minmatar Propulsion Systems') + + +class Effect3863(BaseEffect): + """ + subsystemBonusCaldariPropulsionAfterburnerSpeedFactor + + Used by: + Subsystem: Tengu Propulsion - Fuel Catalyst + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'speedFactor', module.getModifiedItemAttr('subsystemBonusCaldariPropulsion'), + skill='Caldari Propulsion Systems') + + +class Effect3864(BaseEffect): + """ + subsystemBonusAmarrPropulsionAfterburnerSpeedFactor + + Used by: + Subsystem: Legion Propulsion - Wake Limiter + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'speedFactor', module.getModifiedItemAttr('subsystemBonusAmarrPropulsion'), + skill='Amarr Propulsion Systems') + + +class Effect3865(BaseEffect): + """ + subsystemBonusAmarrPropulsion2Agility + + Used by: + Subsystem: Legion Propulsion - Intercalated Nanofibers + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('agility', src.getModifiedItemAttr('subsystemBonusAmarrPropulsion2'), + skill='Amarr Propulsion Systems') + + +class Effect3866(BaseEffect): + """ + subsystemBonusCaldariPropulsion2Agility + + Used by: + Subsystem: Tengu Propulsion - Chassis Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('agility', src.getModifiedItemAttr('subsystemBonusCaldariPropulsion2'), + skill='Caldari Propulsion Systems') + + +class Effect3867(BaseEffect): + """ + subsystemBonusGallentePropulsion2Agility + + Used by: + Subsystem: Proteus Propulsion - Hyperspatial Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('agility', src.getModifiedItemAttr('subsystemBonusGallentePropulsion2'), + skill='Gallente Propulsion Systems') + + +class Effect3868(BaseEffect): + """ + subsystemBonusMinmatarPropulsion2Agility + + Used by: + Subsystem: Loki Propulsion - Intercalated Nanofibers + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('agility', src.getModifiedItemAttr('subsystemBonusMinmatarPropulsion2'), + skill='Minmatar Propulsion Systems') + + +class Effect3869(BaseEffect): + """ + subsystemBonusMinmatarPropulsion2MWDPenalty + + Used by: + Subsystem: Loki Propulsion - Wake Limiter + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', src.getModifiedItemAttr('subsystemBonusMinmatarPropulsion2'), + skill='Minmatar Propulsion Systems') + + +class Effect3872(BaseEffect): + """ + subsystemBonusAmarrPropulsion2MWDPenalty + + Used by: + Subsystem: Legion Propulsion - Wake Limiter + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', src.getModifiedItemAttr('subsystemBonusAmarrPropulsion2'), + skill='Amarr Propulsion Systems') + + +class Effect3875(BaseEffect): + """ + subsystemBonusGallentePropulsionABMWDCapNeed + + Used by: + Subsystem: Proteus Propulsion - Localized Injectors + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'capacitorNeed', module.getModifiedItemAttr('subsystemBonusGallentePropulsion'), + skill='Gallente Propulsion Systems') + + +class Effect3893(BaseEffect): + """ + subsystemBonusMinmatarCoreScanStrengthLADAR + + Used by: + Subsystem: Loki Core - Dissolution Sequencer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanLadarStrength', src.getModifiedItemAttr('subsystemBonusMinmatarCore'), + skill='Minmatar Core Systems') + + +class Effect3895(BaseEffect): + """ + subsystemBonusGallenteCoreScanStrengthMagnetometric + + Used by: + Subsystem: Proteus Core - Electronic Efficiency Gate + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanMagnetometricStrength', src.getModifiedItemAttr('subsystemBonusGallenteCore'), + skill='Gallente Core Systems') + + +class Effect3897(BaseEffect): + """ + subsystemBonusCaldariCoreScanStrengthGravimetric + + Used by: + Subsystem: Tengu Core - Electronic Efficiency Gate + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanGravimetricStrength', src.getModifiedItemAttr('subsystemBonusCaldariCore'), skill='Caldari Core Systems') + + +class Effect3900(BaseEffect): + """ + subsystemBonusAmarrCoreScanStrengthRADAR + + Used by: + Subsystem: Legion Core - Dissolution Sequencer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanRadarStrength', src.getModifiedItemAttr('subsystemBonusAmarrCore'), + skill='Amarr Core Systems') + + +class Effect3959(BaseEffect): + """ + subsystemBonusAmarrDefensiveArmorRepairAmount + + Used by: + Subsystem: Legion Defensive - Covert Reconfiguration + Subsystem: Legion Defensive - Nanobot Injector + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', module.getModifiedItemAttr('subsystemBonusAmarrDefensive'), + skill='Amarr Defensive Systems') + + +class Effect3961(BaseEffect): + """ + subsystemBonusGallenteDefensiveArmorRepairAmount + + Used by: + Subsystem: Proteus Defensive - Covert Reconfiguration + Subsystem: Proteus Defensive - Nanobot Injector + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', module.getModifiedItemAttr('subsystemBonusGallenteDefensive'), + skill='Gallente Defensive Systems') + + +class Effect3962(BaseEffect): + """ + subsystemBonusMinmatarDefensiveShieldArmorRepairAmount + + Used by: + Subsystem: Loki Defensive - Adaptive Defense Node + Subsystem: Loki Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('subsystemBonusMinmatarDefensive'), + skill='Minmatar Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', src.getModifiedItemAttr('subsystemBonusMinmatarDefensive'), + skill='Minmatar Defensive Systems') + + +class Effect3964(BaseEffect): + """ + subsystemBonusCaldariDefensiveShieldBoostAmount + + Used by: + Subsystem: Tengu Defensive - Amplification Node + Subsystem: Tengu Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', module.getModifiedItemAttr('subsystemBonusCaldariDefensive'), + skill='Caldari Defensive Systems') + + +class Effect3976(BaseEffect): + """ + subsystemBonusCaldariDefensiveShieldHP + + Used by: + Subsystem: Tengu Defensive - Supplemental Screening + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('shieldCapacity', module.getModifiedItemAttr('subsystemBonusCaldariDefensive'), + skill='Caldari Defensive Systems') + + +class Effect3979(BaseEffect): + """ + subsystemBonusMinmatarDefensiveShieldArmorHP + + Used by: + Subsystem: Loki Defensive - Augmented Durability + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldCapacity', src.getModifiedItemAttr('subsystemBonusMinmatarDefensive'), + skill='Minmatar Defensive Systems') + fit.ship.boostItemAttr('armorHP', src.getModifiedItemAttr('subsystemBonusMinmatarDefensive'), + skill='Minmatar Defensive Systems') + + +class Effect3980(BaseEffect): + """ + subsystemBonusGallenteDefensiveArmorHP + + Used by: + Subsystem: Proteus Defensive - Augmented Plating + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('armorHP', module.getModifiedItemAttr('subsystemBonusGallenteDefensive'), + skill='Gallente Defensive Systems') + + +class Effect3982(BaseEffect): + """ + subsystemBonusAmarrDefensiveArmorHP + + Used by: + Subsystem: Legion Defensive - Augmented Plating + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('armorHP', module.getModifiedItemAttr('subsystemBonusAmarrDefensive'), + skill='Amarr Defensive Systems') + + +class Effect3992(BaseEffect): + """ + systemShieldHP + + Used by: + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('shieldCapacity', beacon.getModifiedItemAttr('shieldCapacityMultiplier')) + + +class Effect3993(BaseEffect): + """ + systemTargetingRange + + Used by: + Celestials named like: Black Hole Effect Beacon Class (6 of 6) + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('maxTargetRange', beacon.getModifiedItemAttr('maxTargetRangeMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect3995(BaseEffect): + """ + systemSignatureRadius + + Used by: + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('signatureRadius', beacon.getModifiedItemAttr('signatureRadiusMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect3996(BaseEffect): + """ + systemArmorEmResistance + + Used by: + Celestials named like: Incursion Effect (2 of 2) + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('armorEmDamageResonance', beacon.getModifiedItemAttr('armorEmDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect3997(BaseEffect): + """ + systemArmorExplosiveResistance + + Used by: + Celestials named like: Incursion Effect (2 of 2) + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', + beacon.getModifiedItemAttr('armorExplosiveDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect3998(BaseEffect): + """ + systemArmorKineticResistance + + Used by: + Celestials named like: Incursion Effect (2 of 2) + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', + beacon.getModifiedItemAttr('armorKineticDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect3999(BaseEffect): + """ + systemArmorThermalResistance + + Used by: + Celestials named like: Incursion Effect (2 of 2) + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', + beacon.getModifiedItemAttr('armorThermalDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect4002(BaseEffect): + """ + systemMissileVelocity + + Used by: + Celestials named like: Black Hole Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', beacon.getModifiedItemAttr('missileVelocityMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4003(BaseEffect): + """ + systemMaxVelocity + + Used by: + Celestials named like: Black Hole Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('maxVelocity', beacon.getModifiedItemAttr('maxVelocityMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4016(BaseEffect): + """ + systemDamageMultiplierGunnery + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Gunnery'), + 'damageMultiplier', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True) + + +class Effect4017(BaseEffect): + """ + systemDamageThermalMissiles + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4018(BaseEffect): + """ + systemDamageEmMissiles + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'emDamage', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4019(BaseEffect): + """ + systemDamageExplosiveMissiles + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4020(BaseEffect): + """ + systemDamageKineticMissiles + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4021(BaseEffect): + """ + systemDamageDrones + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.drones.filteredItemMultiply(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4022(BaseEffect): + """ + systemTracking + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4023(BaseEffect): + """ + systemAoeVelocity + + Used by: + Celestials named like: Black Hole Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeVelocity', beacon.getModifiedItemAttr('aoeVelocityMultiplier')) + + +class Effect4033(BaseEffect): + """ + systemHeatDamage + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'heatDamage' in mod.itemModifiedAttributes, + 'heatDamage', module.getModifiedItemAttr('heatDamageMultiplier')) + + +class Effect4034(BaseEffect): + """ + systemOverloadArmor + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadArmorDamageAmount' in mod.itemModifiedAttributes, + 'overloadArmorDamageAmount', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4035(BaseEffect): + """ + systemOverloadDamageModifier + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadDamageModifier' in mod.itemModifiedAttributes, + 'overloadDamageModifier', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4036(BaseEffect): + """ + systemOverloadDurationBonus + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadDurationBonus' in mod.itemModifiedAttributes, + 'overloadDurationBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4037(BaseEffect): + """ + systemOverloadEccmStrength + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadECCMStrenghtBonus' in mod.itemModifiedAttributes, + 'overloadECCMStrenghtBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4038(BaseEffect): + """ + systemOverloadEcmStrength + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadECMStrenghtBonus' in mod.itemModifiedAttributes, + 'overloadECMStrenghtBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4039(BaseEffect): + """ + systemOverloadHardening + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadHardeningBonus' in mod.itemModifiedAttributes, + 'overloadHardeningBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4040(BaseEffect): + """ + systemOverloadRange + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadRangeBonus' in mod.itemModifiedAttributes, + 'overloadRangeBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4041(BaseEffect): + """ + systemOverloadRof + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadRofBonus' in mod.itemModifiedAttributes, + 'overloadRofBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4042(BaseEffect): + """ + systemOverloadSelfDuration + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadSelfDurationBonus' in mod.itemModifiedAttributes, + 'overloadSelfDurationBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4043(BaseEffect): + """ + systemOverloadShieldBonus + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadShieldBonus' in mod.itemModifiedAttributes, + 'overloadShieldBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4044(BaseEffect): + """ + systemOverloadSpeedFactor + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: 'overloadSpeedFactorBonus' in mod.itemModifiedAttributes, + 'overloadSpeedFactorBonus', module.getModifiedItemAttr('overloadBonusMultiplier')) + + +class Effect4045(BaseEffect): + """ + systemSmartBombRange + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Smart Bomb', + 'empFieldRange', module.getModifiedItemAttr('empFieldRangeMultiplier')) + + +class Effect4046(BaseEffect): + """ + systemSmartBombEmDamage + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Smart Bomb', + 'emDamage', module.getModifiedItemAttr('smartbombDamageMultiplier')) + + +class Effect4047(BaseEffect): + """ + systemSmartBombThermalDamage + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Smart Bomb', + 'thermalDamage', module.getModifiedItemAttr('smartbombDamageMultiplier')) + + +class Effect4048(BaseEffect): + """ + systemSmartBombKineticDamage + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Smart Bomb', + 'kineticDamage', module.getModifiedItemAttr('smartbombDamageMultiplier')) + + +class Effect4049(BaseEffect): + """ + systemSmartBombExplosiveDamage + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Smart Bomb', + 'explosiveDamage', module.getModifiedItemAttr('smartbombDamageMultiplier')) + + +class Effect4054(BaseEffect): + """ + systemSmallEnergyDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', module.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True) + + +class Effect4055(BaseEffect): + """ + systemSmallProjectileDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', module.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True) + + +class Effect4056(BaseEffect): + """ + systemSmallHybridDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', module.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True) + + +class Effect4057(BaseEffect): + """ + systemRocketEmDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Rockets'), + 'emDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4058(BaseEffect): + """ + systemRocketExplosiveDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Rockets'), + 'explosiveDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4059(BaseEffect): + """ + systemRocketKineticDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Rockets'), + 'kineticDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4060(BaseEffect): + """ + systemRocketThermalDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Rockets'), + 'thermalDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4061(BaseEffect): + """ + systemStandardMissileThermalDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'thermalDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4062(BaseEffect): + """ + systemStandardMissileEmDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'emDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4063(BaseEffect): + """ + systemStandardMissileExplosiveDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'explosiveDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4086(BaseEffect): + """ + systemArmorRepairAmount + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Repair Systems') or + mod.item.requiresSkill('Capital Repair Systems'), + 'armorDamageAmount', module.getModifiedItemAttr('armorDamageAmountMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4088(BaseEffect): + """ + systemArmorRemoteRepairAmount + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'armorDamageAmount', + module.getModifiedItemAttr('armorDamageAmountMultiplierRemote'), + stackingPenalties=True) + + +class Effect4089(BaseEffect): + """ + systemShieldRemoteRepairAmount + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'shieldBonus', module.getModifiedItemAttr('shieldBonusMultiplierRemote'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4090(BaseEffect): + """ + systemCapacitorCapacity + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('capacitorCapacity', beacon.getModifiedItemAttr('capacitorCapacityMultiplierSystem')) + + +class Effect4091(BaseEffect): + """ + systemCapacitorRecharge + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('rechargeRate', beacon.getModifiedItemAttr('rechargeRateMultiplier')) + + +class Effect4093(BaseEffect): + """ + subsystemBonusAmarrOffensiveEnergyWeaponDamageMultiplier + + Used by: + Subsystem: Legion Offensive - Liquid Crystal Magnifiers + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', module.getModifiedItemAttr('subsystemBonusAmarrOffensive'), + skill='Amarr Offensive Systems') + + +class Effect4104(BaseEffect): + """ + subsystemBonusCaldariOffensiveHybridWeaponMaxRange + + Used by: + Subsystem: Tengu Offensive - Magnetic Infusion Basin + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', module.getModifiedItemAttr('subsystemBonusCaldariOffensive'), + skill='Caldari Offensive Systems') + + +class Effect4106(BaseEffect): + """ + subsystemBonusGallenteOffensiveHybridWeaponFalloff + + Used by: + Subsystem: Proteus Offensive - Hybrid Encoding Platform + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'falloff', module.getModifiedItemAttr('subsystemBonusGallenteOffensive'), + skill='Gallente Offensive Systems') + + +class Effect4114(BaseEffect): + """ + subsystemBonusMinmatarOffensiveProjectileWeaponFalloff + + Used by: + Subsystem: Loki Offensive - Projectile Scoping Array + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', module.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), + skill='Minmatar Offensive Systems') + + +class Effect4115(BaseEffect): + """ + subsystemBonusMinmatarOffensiveProjectileWeaponMaxRange + + Used by: + Subsystem: Loki Offensive - Projectile Scoping Array + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'maxRange', module.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), + skill='Minmatar Offensive Systems') + + +class Effect4122(BaseEffect): + """ + subsystemBonusCaldariOffensive1LauncherROF + + Used by: + Subsystem: Tengu Offensive - Accelerated Ejection Bay + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Missile Launcher Heavy', 'Missile Launcher Rapid Light', 'Missile Launcher Heavy Assault') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'speed', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + + +class Effect4135(BaseEffect): + """ + systemShieldEmResistance + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', beacon.getModifiedItemAttr('shieldEmDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect4136(BaseEffect): + """ + systemShieldExplosiveResistance + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', + beacon.getModifiedItemAttr('shieldExplosiveDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect4137(BaseEffect): + """ + systemShieldKineticResistance + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', + beacon.getModifiedItemAttr('shieldKineticDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect4138(BaseEffect): + """ + systemShieldThermalResistance + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', + beacon.getModifiedItemAttr('shieldThermalDamageResistanceBonus'), + stackingPenalties=True) + + +class Effect4152(BaseEffect): + """ + subsystemBonusAmarrEngineeringHeatDamageReduction + + Used by: + Subsystem: Legion Core - Energy Parasitic Complex + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + module.getModifiedItemAttr('subsystemBonusAmarrCore'), + skill='Amarr Core Systems') + + +class Effect4153(BaseEffect): + """ + subsystemBonusCaldariEngineeringHeatDamageReduction + + Used by: + Subsystem: Tengu Core - Obfuscation Manifold + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + module.getModifiedItemAttr('subsystemBonusCaldariCore'), + skill='Caldari Core Systems') + + +class Effect4154(BaseEffect): + """ + subsystemBonusGallenteEngineeringHeatDamageReduction + + Used by: + Subsystem: Proteus Core - Friction Extension Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + module.getModifiedItemAttr('subsystemBonusGallenteCore'), + skill='Gallente Core Systems') + + +class Effect4155(BaseEffect): + """ + subsystemBonusMinmatarEngineeringHeatDamageReduction + + Used by: + Subsystem: Loki Core - Immobility Drivers + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + module.getModifiedItemAttr('subsystemBonusMinmatarCore'), + skill='Minmatar Core Systems') + + +class Effect4158(BaseEffect): + """ + subsystemBonusCaldariCoreCapacitorCapacity + + Used by: + Subsystem: Tengu Core - Augmented Graviton Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('capacitorCapacity', src.getModifiedItemAttr('subsystemBonusCaldariCore'), + skill='Caldari Core Systems') + + +class Effect4159(BaseEffect): + """ + subsystemBonusAmarrCoreCapacitorCapacity + + Used by: + Subsystem: Legion Core - Augmented Antimatter Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('capacitorCapacity', src.getModifiedItemAttr('subsystemBonusAmarrCore'), skill='Amarr Core Systems') + + +class Effect4161(BaseEffect): + """ + baseMaxScanDeviationModifierRequiringAstrometrics + + Used by: + Implants named like: Poteque 'Prospector' Astrometric Pinpointing AP (3 of 3) + Skill: Astrometric Pinpointing + Skill: Astrometrics + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseMaxScanDeviation', + container.getModifiedItemAttr('maxScanDeviationModifier') * level) + + +class Effect4162(BaseEffect): + """ + baseSensorStrengthModifierRequiringAstrometrics + + Used by: + Modules from group: Scan Probe Launcher (4 of 7) + Implants named like: Poteque 'Prospector' Astrometric Rangefinding AR (3 of 3) + Implants named like: grade Virtue (10 of 12) + Modules named like: Gravity Capacitor Upgrade (8 of 8) + Skill: Astrometric Rangefinding + Skill: Astrometrics + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + penalized = False if 'skill' in context or 'implant' in context else True + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseSensorStrength', container.getModifiedItemAttr('scanStrengthBonus') * level, + stackingPenalties=penalized) + + +class Effect4165(BaseEffect): + """ + shipBonusScanProbeStrengthCF + + Used by: + Ship: Heron + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Scanner Probe', + 'baseSensorStrength', ship.getModifiedItemAttr('shipBonusCF2'), + skill='Caldari Frigate') + + +class Effect4166(BaseEffect): + """ + shipBonusScanProbeStrengthMF + + Used by: + Ship: Probe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Scanner Probe', + 'baseSensorStrength', ship.getModifiedItemAttr('shipBonusMF2'), + skill='Minmatar Frigate') + + +class Effect4167(BaseEffect): + """ + shipBonusScanProbeStrengthGF + + Used by: + Ship: Imicus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Scanner Probe', + 'baseSensorStrength', ship.getModifiedItemAttr('shipBonusGF2'), + skill='Gallente Frigate') + + +class Effect4168(BaseEffect): + """ + eliteBonusCoverOpsScanProbeStrength2 + + Used by: + Ships from group: Covert Ops (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Scanner Probe', + 'baseSensorStrength', ship.getModifiedItemAttr('eliteBonusCovertOps2'), + skill='Covert Ops') + + +class Effect4187(BaseEffect): + """ + shipBonusStrategicCruiserAmarrHeatDamage + + Used by: + Ship: Legion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusStrategicCruiserAmarr1'), + skill='Amarr Strategic Cruiser') + + +class Effect4188(BaseEffect): + """ + shipBonusStrategicCruiserCaldariHeatDamage + + Used by: + Ship: Tengu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusStrategicCruiserCaldari1'), + skill='Caldari Strategic Cruiser') + + +class Effect4189(BaseEffect): + """ + shipBonusStrategicCruiserGallenteHeatDamage + + Used by: + Ship: Proteus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusStrategicCruiserGallente1'), + skill='Gallente Strategic Cruiser') + + +class Effect4190(BaseEffect): + """ + shipBonusStrategicCruiserMinmatarHeatDamage + + Used by: + Ship: Loki + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusStrategicCruiserMinmatar1'), + skill='Minmatar Strategic Cruiser') + + +class Effect4215(BaseEffect): + """ + subsystemBonusAmarrOffensive2EnergyWeaponCapacitorNeed + + Used by: + Subsystem: Legion Offensive - Liquid Crystal Magnifiers + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'capacitorNeed', module.getModifiedItemAttr('subsystemBonusAmarrOffensive2'), + skill='Amarr Offensive Systems') + + +class Effect4216(BaseEffect): + """ + subsystemBonusAmarrCore2EnergyVampireAmount + + Used by: + Subsystem: Legion Core - Energy Parasitic Complex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'powerTransferAmount', + src.getModifiedItemAttr('subsystemBonusAmarrCore2'), skill='Amarr Core Systems') + + +class Effect4217(BaseEffect): + """ + subsystemBonusAmarrCore2EnergyDestabilizerAmount + + Used by: + Subsystem: Legion Core - Energy Parasitic Complex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'energyNeutralizerAmount', + src.getModifiedItemAttr('subsystemBonusAmarrCore2'), skill='Amarr Core Systems') + + +class Effect4248(BaseEffect): + """ + subsystemBonusCaldariOffensive2MissileLauncherKineticDamage + + Used by: + Subsystem: Tengu Offensive - Accelerated Ejection Bay + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'kineticDamage', src.getModifiedItemAttr('subsystemBonusCaldariOffensive2'), + skill='Caldari Offensive Systems') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', src.getModifiedItemAttr('subsystemBonusCaldariOffensive2'), + skill='Caldari Offensive Systems') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'kineticDamage', src.getModifiedItemAttr('subsystemBonusCaldariOffensive2'), + skill='Caldari Offensive Systems') + + +class Effect4250(BaseEffect): + """ + subsystemBonusGallenteOffensiveDroneDamageHP + + Used by: + Subsystem: Proteus Offensive - Drone Synthesis Projector + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'armorHP', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), + skill='Gallente Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'hp', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), + skill='Gallente Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'damageMultiplier', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), + skill='Gallente Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'shieldCapacity', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), + skill='Gallente Offensive Systems') + + +class Effect4251(BaseEffect): + """ + subsystemBonusMinmatarOffensive2ProjectileWeaponDamageMultiplier + + Used by: + Subsystem: Loki Offensive - Projectile Scoping Array + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', module.getModifiedItemAttr('subsystemBonusMinmatarOffensive2'), + skill='Minmatar Offensive Systems') + + +class Effect4256(BaseEffect): + """ + subsystemBonusMinmatarOffensive2MissileLauncherROF + + Used by: + Subsystem: Loki Offensive - Launcher Efficiency Configuration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Missile Launcher Heavy', 'Missile Launcher Rapid Light', 'Missile Launcher Heavy Assault') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'speed', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive2'), + skill='Minmatar Offensive Systems') + + +class Effect4264(BaseEffect): + """ + subsystemBonusMinmatarCoreCapacitorRecharge + + Used by: + Subsystem: Loki Core - Augmented Nuclear Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('rechargeRate', src.getModifiedItemAttr('subsystemBonusMinmatarCore'), + skill='Minmatar Core Systems') + + +class Effect4265(BaseEffect): + """ + subsystemBonusGallenteCoreCapacitorRecharge + + Used by: + Subsystem: Proteus Core - Augmented Fusion Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('rechargeRate', src.getModifiedItemAttr('subsystemBonusGallenteCore'), + skill='Gallente Core Systems') + + +class Effect4269(BaseEffect): + """ + subsystemBonusAmarrCore3ScanResolution + + Used by: + Subsystem: Legion Core - Dissolution Sequencer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanResolution', src.getModifiedItemAttr('subsystemBonusAmarrCore3'), + skill='Amarr Core Systems') + + +class Effect4270(BaseEffect): + """ + subsystemBonusMinmatarCore3ScanResolution + + Used by: + Subsystem: Loki Core - Dissolution Sequencer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanResolution', src.getModifiedItemAttr('subsystemBonusMinmatarCore3'), + skill='Minmatar Core Systems') + + +class Effect4271(BaseEffect): + """ + subsystemBonusCaldariCore2MaxTargetingRange + + Used by: + Subsystem: Tengu Core - Electronic Efficiency Gate + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('maxTargetRange', src.getModifiedItemAttr('subsystemBonusCaldariCore2'), skill='Caldari Core Systems') + + +class Effect4272(BaseEffect): + """ + subsystemBonusGallenteCore2MaxTargetingRange + + Used by: + Subsystem: Proteus Core - Electronic Efficiency Gate + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('maxTargetRange', src.getModifiedItemAttr('subsystemBonusGallenteCore2'), + skill='Gallente Core Systems') + + +class Effect4273(BaseEffect): + """ + subsystemBonusGallenteCore2WarpScrambleRange + + Used by: + Subsystem: Proteus Core - Friction Extension Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', 'maxRange', + src.getModifiedItemAttr('subsystemBonusGallenteCore2'), skill='Gallente Core Systems') + + +class Effect4274(BaseEffect): + """ + subsystemBonusMinmatarCore2StasisWebifierRange + + Used by: + Subsystem: Loki Core - Immobility Drivers + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', src.getModifiedItemAttr('subsystemBonusMinmatarCore2'), skill='Minmatar Core Systems') + + +class Effect4275(BaseEffect): + """ + subsystemBonusCaldariPropulsion2WarpSpeed + + Used by: + Subsystem: Tengu Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('subsystemBonusCaldariPropulsion2'), + skill='Caldari Propulsion Systems') + + +class Effect4277(BaseEffect): + """ + subsystemBonusGallentePropulsionWarpCapacitor + + Used by: + Subsystem: Proteus Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpCapacitorNeed', src.getModifiedItemAttr('subsystemBonusGallentePropulsion'), + skill='Gallente Propulsion Systems') + + +class Effect4278(BaseEffect): + """ + subsystemBonusGallentePropulsion2WarpSpeed + + Used by: + Subsystem: Proteus Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('subsystemBonusGallentePropulsion2'), + skill='Gallente Propulsion Systems') + + +class Effect4280(BaseEffect): + """ + systemAgility + + Used by: + Celestials named like: Black Hole Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('agility', beacon.getModifiedItemAttr('agilityMultiplier'), stackingPenalties=True) + + +class Effect4282(BaseEffect): + """ + subsystemBonusGallenteOffensive2HybridWeaponDamageMultiplier + + Used by: + Subsystem: Proteus Offensive - Hybrid Encoding Platform + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', module.getModifiedItemAttr('subsystemBonusGallenteOffensive2'), + skill='Gallente Offensive Systems') + + +class Effect4283(BaseEffect): + """ + subsystemBonusCaldariOffensive2HybridWeaponDamageMultiplier + + Used by: + Subsystem: Tengu Offensive - Magnetic Infusion Basin + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', module.getModifiedItemAttr('subsystemBonusCaldariOffensive2'), + skill='Caldari Offensive Systems') + + +class Effect4286(BaseEffect): + """ + subsystemBonusAmarrOffensive2RemoteArmorRepairCapUse + + Used by: + Subsystem: Legion Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('subsystemBonusAmarrOffensive2'), skill='Amarr Offensive Systems') + + +class Effect4288(BaseEffect): + """ + subsystemBonusGallenteOffensive2RemoteArmorRepairCapUse + + Used by: + Subsystem: Proteus Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('subsystemBonusGallenteOffensive2'), skill='Gallente Offensive Systems') + + +class Effect4290(BaseEffect): + """ + subsystemBonusMinmatarOffensive2RemoteRepCapUse + + Used by: + Subsystem: Loki Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') or mod.item.requiresSkill('Remote Armor Repair Systems'), + 'capacitorNeed', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive2'), + skill='Minmatar Offensive Systems') + + +class Effect4292(BaseEffect): + """ + subsystemBonusCaldariOffensive2RemoteShieldBoosterCapUse + + Used by: + Subsystem: Tengu Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'capacitorNeed', src.getModifiedItemAttr('subsystemBonusCaldariOffensive2'), + skill='Caldari Offensive Systems') + + +class Effect4321(BaseEffect): + """ + subsystemBonusCaldariCore2ECMStrengthRange + + Used by: + Subsystem: Tengu Core - Obfuscation Manifold + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'scanLadarStrengthBonus', + src.getModifiedItemAttr('subsystemBonusCaldariCore2'), skill='Caldari Core Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'scanRadarStrengthBonus', + src.getModifiedItemAttr('subsystemBonusCaldariCore2'), skill='Caldari Core Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'maxRange', + src.getModifiedItemAttr('subsystemBonusCaldariCore2'), skill='Caldari Core Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'scanGravimetricStrengthBonus', + src.getModifiedItemAttr('subsystemBonusCaldariCore2'), skill='Caldari Core Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'scanMagnetometricStrengthBonus', + src.getModifiedItemAttr('subsystemBonusCaldariCore2'), skill='Caldari Core Systems') + + +class Effect4327(BaseEffect): + """ + subsystemBonusAmarrOffensive3DroneDamageHP + + Used by: + Subsystem: Legion Offensive - Assault Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'hp', src.getModifiedItemAttr('subsystemBonusAmarrOffensive3'), skill='Amarr Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'armorHP', src.getModifiedItemAttr('subsystemBonusAmarrOffensive3'), skill='Amarr Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'shieldCapacity', src.getModifiedItemAttr('subsystemBonusAmarrOffensive3'), skill='Amarr Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'damageMultiplier', src.getModifiedItemAttr('subsystemBonusAmarrOffensive3'), skill='Amarr Offensive Systems') + + +class Effect4330(BaseEffect): + """ + subsystemBonusAmarrOffensive3EnergyWeaponMaxRange + + Used by: + Subsystem: Legion Offensive - Liquid Crystal Magnifiers + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'maxRange', module.getModifiedItemAttr('subsystemBonusAmarrOffensive3'), + skill='Amarr Offensive Systems') + + +class Effect4331(BaseEffect): + """ + subsystemBonusCaldariOffensive3HMLHAMVelocity + + Used by: + Subsystem: Tengu Offensive - Accelerated Ejection Bay + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles') or mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', src.getModifiedItemAttr('subsystemBonusCaldariOffensive3'), + skill='Caldari Offensive Systems') + + +class Effect4342(BaseEffect): + """ + subsystemBonusMinmatarCore2MaxTargetingRange + + Used by: + Subsystem: Loki Core - Dissolution Sequencer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('maxTargetRange', src.getModifiedItemAttr('subsystemBonusMinmatarCore2'), + skill='Minmatar Core Systems') + + +class Effect4343(BaseEffect): + """ + subsystemBonusAmarrCore2MaxTargetingRange + + Used by: + Subsystem: Legion Core - Dissolution Sequencer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('maxTargetRange', src.getModifiedItemAttr('subsystemBonusAmarrCore2'), + skill='Amarr Core Systems') + + +class Effect4347(BaseEffect): + """ + subsystemBonusGallenteOffensive3TurretTracking + + Used by: + Subsystem: Proteus Offensive - Drone Synthesis Projector + Subsystem: Proteus Offensive - Hybrid Encoding Platform + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'trackingSpeed', module.getModifiedItemAttr('subsystemBonusGallenteOffensive3'), + skill='Gallente Offensive Systems') + + +class Effect4351(BaseEffect): + """ + subsystemBonusMinmatarOffensive3TurretTracking + + Used by: + Subsystem: Loki Offensive - Projectile Scoping Array + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'trackingSpeed', module.getModifiedItemAttr('subsystemBonusMinmatarOffensive3'), + skill='Minmatar Offensive Systems') + + +class Effect4358(BaseEffect): + """ + ecmRangeBonusModuleEffect + + Used by: + Modules from group: ECM Stabilizer (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'maxRange', module.getModifiedItemAttr('ecmRangeBonus'), + stackingPenalties=True) + + +class Effect4360(BaseEffect): + """ + subsystemBonusAmarrOffensiveMissileLauncherROF + + Used by: + Subsystem: Legion Offensive - Assault Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Missile Launcher Heavy', 'Missile Launcher Rapid Light', 'Missile Launcher Heavy Assault') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'speed', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + + +class Effect4362(BaseEffect): + """ + subsystemBonusAmarrOffensive2MissileDamage + + Used by: + Subsystem: Legion Offensive - Assault Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', src.getModifiedItemAttr('subsystemBonusAmarrOffensive2'), skill='Amarr Offensive Systems') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', src.getModifiedItemAttr('subsystemBonusAmarrOffensive2'), skill='Amarr Offensive Systems') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'emDamage', src.getModifiedItemAttr('subsystemBonusAmarrOffensive2'), skill='Amarr Offensive Systems') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', src.getModifiedItemAttr('subsystemBonusAmarrOffensive2'), skill='Amarr Offensive Systems') + + +class Effect4366(BaseEffect): + """ + shipBonusMediumHybridDmgCC2 + + Used by: + Ship: Falcon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect4369(BaseEffect): + """ + subsystemBonusWarpBubbleImmune + + Used by: + Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.forceItemAttr('warpBubbleImmune', module.getModifiedItemAttr('warpBubbleImmuneModifier')) + + +class Effect4370(BaseEffect): + """ + caldariShipEwFalloffRangeCC2 + + Used by: + Ship: Blackbird + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'falloffEffectiveness', ship.getModifiedItemAttr('shipBonusCC2'), + skill='Caldari Cruiser') + + +class Effect4372(BaseEffect): + """ + caldariShipEwFalloffRangeCB3 + + Used by: + Ship: Scorpion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'falloffEffectiveness', ship.getModifiedItemAttr('shipBonusCB3'), + skill='Caldari Battleship') + + +class Effect4373(BaseEffect): + """ + subSystemBonusAmarrOffensiveCommandBursts + + Used by: + Subsystem: Legion Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusAmarrOffensive'), skill='Amarr Offensive Systems') + + +class Effect4377(BaseEffect): + """ + shipBonusTorpedoVelocityGF2 + + Used by: + Ship: Nemesis + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect4378(BaseEffect): + """ + shipBonusTorpedoVelocityMF2 + + Used by: + Ship: Hound + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect4379(BaseEffect): + """ + shipBonusTorpedoVelocity2AF + + Used by: + Ship: Purifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect4380(BaseEffect): + """ + shipBonusTorpedoVelocityCF2 + + Used by: + Ship: Manticore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect4384(BaseEffect): + """ + eliteReconBonusHeavyMissileVelocity + + Used by: + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusReconShip1'), + skill='Recon Ships') + + +class Effect4385(BaseEffect): + """ + eliteReconBonusHeavyAssaultMissileVelocity + + Used by: + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusReconShip1'), + skill='Recon Ships') + + +class Effect4393(BaseEffect): + """ + shipBonusEliteCover2TorpedoThermalDamage + + Used by: + Ship: Nemesis + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'thermalDamage', ship.getModifiedItemAttr('eliteBonusCovertOps2'), + skill='Covert Ops') + + +class Effect4394(BaseEffect): + """ + shipBonusEliteCover2TorpedoEMDamage + + Used by: + Ship: Purifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'emDamage', ship.getModifiedItemAttr('eliteBonusCovertOps2'), skill='Covert Ops') + + +class Effect4395(BaseEffect): + """ + shipBonusEliteCover2TorpedoExplosiveDamage + + Used by: + Ship: Hound + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosiveDamage', ship.getModifiedItemAttr('eliteBonusCovertOps2'), + skill='Covert Ops') + + +class Effect4396(BaseEffect): + """ + shipBonusEliteCover2TorpedoKineticDamage + + Used by: + Ship: Manticore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'kineticDamage', ship.getModifiedItemAttr('eliteBonusCovertOps2'), + skill='Covert Ops') + + +class Effect4397(BaseEffect): + """ + shipBonusGFTorpedoExplosionVelocity + + Used by: + Ship: Nemesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect4398(BaseEffect): + """ + shipBonusMF1TorpedoExplosionVelocity + + Used by: + Ship: Hound + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect4399(BaseEffect): + """ + shipBonusCF1TorpedoExplosionVelocity + + Used by: + Ship: Manticore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect4400(BaseEffect): + """ + shipBonusAF1TorpedoExplosionVelocity + + Used by: + Ship: Purifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect4413(BaseEffect): + """ + shipBonusGF1TorpedoFlightTime + + Used by: + Ship: Nemesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosionDelay', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect4415(BaseEffect): + """ + shipBonusMF1TorpedoFlightTime + + Used by: + Ship: Hound + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosionDelay', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect4416(BaseEffect): + """ + shipBonusCF1TorpedoFlightTime + + Used by: + Ship: Manticore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosionDelay', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect4417(BaseEffect): + """ + shipBonusAF1TorpedoFlightTime + + Used by: + Ship: Purifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosionDelay', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect4451(BaseEffect): + """ + ScanRadarStrengthModifierEffect + + Used by: + Implants named like: Low grade Grail (5 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.increaseItemAttr('scanRadarStrength', implant.getModifiedItemAttr('scanRadarStrengthModifier')) + + +class Effect4452(BaseEffect): + """ + ScanLadarStrengthModifierEffect + + Used by: + Implants named like: Low grade Jackal (5 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.increaseItemAttr('scanLadarStrength', implant.getModifiedItemAttr('scanLadarStrengthModifier')) + + +class Effect4453(BaseEffect): + """ + ScanGravimetricStrengthModifierEffect + + Used by: + Implants named like: Low grade Talon (5 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.increaseItemAttr('scanGravimetricStrength', implant.getModifiedItemAttr('scanGravimetricStrengthModifier')) + + +class Effect4454(BaseEffect): + """ + ScanMagnetometricStrengthModifierEffect + + Used by: + Implants named like: Low grade Spur (5 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.ship.increaseItemAttr('scanMagnetometricStrength', + implant.getModifiedItemAttr('scanMagnetometricStrengthModifier')) + + +class Effect4456(BaseEffect): + """ + federationsetbonus3 + + Used by: + Implants named like: High grade Spur (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanMagnetometricStrengthPercent', + implant.getModifiedItemAttr('implantSetFederationNavy')) + + +class Effect4457(BaseEffect): + """ + imperialsetbonus3 + + Used by: + Implants named like: High grade Grail (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanRadarStrengthPercent', + implant.getModifiedItemAttr('implantSetImperialNavy')) + + +class Effect4458(BaseEffect): + """ + republicsetbonus3 + + Used by: + Implants named like: High grade Jackal (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanLadarStrengthPercent', + implant.getModifiedItemAttr('implantSetRepublicFleet')) + + +class Effect4459(BaseEffect): + """ + caldarisetbonus3 + + Used by: + Implants named like: High grade Talon (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanGravimetricStrengthPercent', + implant.getModifiedItemAttr('implantSetCaldariNavy')) + + +class Effect4460(BaseEffect): + """ + imperialsetLGbonus + + Used by: + Implants named like: Low grade Grail (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanRadarStrengthModifier', + implant.getModifiedItemAttr('implantSetLGImperialNavy')) + + +class Effect4461(BaseEffect): + """ + federationsetLGbonus + + Used by: + Implants named like: Low grade Spur (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanMagnetometricStrengthModifier', + implant.getModifiedItemAttr('implantSetLGFederationNavy')) + + +class Effect4462(BaseEffect): + """ + caldarisetLGbonus + + Used by: + Implants named like: Low grade Talon (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanGravimetricStrengthModifier', + implant.getModifiedItemAttr('implantSetLGCaldariNavy')) + + +class Effect4463(BaseEffect): + """ + republicsetLGbonus + + Used by: + Implants named like: Low grade Jackal (6 of 6) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill('Cybernetics'), + 'scanLadarStrengthModifier', + implant.getModifiedItemAttr('implantSetLGRepublicFleet')) + + +class Effect4464(BaseEffect): + """ + shipProjectileRofMF + + Used by: + Ship: Claw + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), 'speed', + src.getModifiedItemAttr('shipBonusMF'), stackingPenalties=True, skill='Minmatar Frigate') + + +class Effect4471(BaseEffect): + """ + shipBonusStasisMF2 + + Used by: + Ship: Caedes + Ship: Cruor + Ship: Freki + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect4472(BaseEffect): + """ + shipProjectileDmgMC + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + + +class Effect4473(BaseEffect): + """ + shipVelocityBonusATC1 + + Used by: + Ship: Adrestia + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('shipBonusATC1')) + + +class Effect4474(BaseEffect): + """ + shipMTMaxRangeBonusATC + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusATC2')) + + +class Effect4475(BaseEffect): + """ + shipMTFalloffBonusATC + + Used by: + Ship: Mimir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusATC2')) + + +class Effect4476(BaseEffect): + """ + shipMTFalloffBonusATF + + Used by: + Ship: Freki + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusATF2')) + + +class Effect4477(BaseEffect): + """ + shipMTMaxRangeBonusATF + + Used by: + Ship: Freki + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusATF2')) + + +class Effect4478(BaseEffect): + """ + shipBonusAfterburnerCapNeedATF + + Used by: + Ship: Freki + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Propulsion Module', + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusATF1')) + + +class Effect4479(BaseEffect): + """ + shipBonusSurveyProbeExplosionDelaySkillSurveyCovertOps3 + + Used by: + Ships from group: Covert Ops (5 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Survey Probe', + 'explosionDelay', ship.getModifiedItemAttr('eliteBonusCovertOps3'), + skill='Covert Ops') + + +class Effect4482(BaseEffect): + """ + shipETOptimalRange2AF + + Used by: + Ship: Imperial Navy Slicer + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect4484(BaseEffect): + """ + shipPTurretFalloffBonusGB + + Used by: + Ship: Machariel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusGB'), skill='Gallente Battleship') + + +class Effect4485(BaseEffect): + """ + shipBonusStasisWebSpeedFactorMB + + Used by: + Ship: Vindicator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'speedFactor', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect4489(BaseEffect): + """ + superWeaponAmarr + + Used by: + Module: 'Judgment' Electromagnetic Doomsday + """ + + type = 'active' + + +class Effect4490(BaseEffect): + """ + superWeaponCaldari + + Used by: + Module: 'Oblivion' Kinetic Doomsday + """ + + type = 'active' + + +class Effect4491(BaseEffect): + """ + superWeaponGallente + + Used by: + Module: 'Aurora Ominae' Thermal Doomsday + """ + + type = 'active' + + +class Effect4492(BaseEffect): + """ + superWeaponMinmatar + + Used by: + Module: 'Gjallarhorn' Explosive Doomsday + """ + + type = 'active' + + +class Effect4510(BaseEffect): + """ + shipStasisWebStrengthBonusMC2 + + Used by: + Ship: Victor + Ship: Vigilant + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'speedFactor', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect4512(BaseEffect): + """ + shipPTurretFalloffBonusGC + + Used by: + Ship: Cynabal + Ship: Moracha + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect4513(BaseEffect): + """ + shipStasisWebStrengthBonusMF2 + + Used by: + Ship: Daredevil + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'speedFactor', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect4515(BaseEffect): + """ + shipFalloffBonusMF + + Used by: + Ship: Chremoas + Ship: Dramiel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect4516(BaseEffect): + """ + shipHTurretFalloffBonusGC + + Used by: + Ship: Victor + Ship: Vigilant + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect4527(BaseEffect): + """ + gunneryFalloffBonusOnline + + Used by: + Modules from group: Tracking Enhancer (10 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + + +class Effect4555(BaseEffect): + """ + capitalLauncherSkillCruiseCitadelEmDamage1 + + Used by: + Skill: XL Cruise Missiles + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), + 'emDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect4556(BaseEffect): + """ + capitalLauncherSkillCruiseCitadelExplosiveDamage1 + + Used by: + Skill: XL Cruise Missiles + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), + 'explosiveDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect4557(BaseEffect): + """ + capitalLauncherSkillCruiseCitadelKineticDamage1 + + Used by: + Skill: XL Cruise Missiles + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), + 'kineticDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect4558(BaseEffect): + """ + capitalLauncherSkillCruiseCitadelThermalDamage1 + + Used by: + Skill: XL Cruise Missiles + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), + 'thermalDamage', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect4559(BaseEffect): + """ + gunneryMaxRangeFalloffTrackingSpeedBonus + + Used by: + Modules from group: Tracking Computer (11 of 11) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + for attr in ('maxRange', 'falloff', 'trackingSpeed'): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + attr, module.getModifiedItemAttr('%sBonus' % attr), + stackingPenalties=True) + + +class Effect4575(BaseEffect): + """ + industrialCoreEffect2 + + Used by: + Variations of module: Industrial Core I (2 of 2) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, src, context): + fit.extraAttributes['siege'] = True + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('speedFactor'), stackingPenalties=True) + fit.ship.multiplyItemAttr('mass', src.getModifiedItemAttr('siegeMassMultiplier')) + fit.ship.multiplyItemAttr('scanResolution', + src.getModifiedItemAttr('scanResolutionMultiplier'), + stackingPenalties=True) + + # Remote Shield Repper Bonuses + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Emission Systems'), + 'duration', + src.getModifiedItemAttr('industrialCoreRemoteLogisticsDurationBonus'), + ) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Emission Systems'), + 'maxRange', + src.getModifiedItemAttr('industrialCoreRemoteLogisticsRangeBonus'), + stackingPenalties=True + ) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Emission Systems'), + 'capacitorNeed', + src.getModifiedItemAttr('industrialCoreRemoteLogisticsDurationBonus') + ) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Emission Systems'), + 'falloffEffectiveness', + src.getModifiedItemAttr('industrialCoreRemoteLogisticsRangeBonus'), + stackingPenalties=True + ) + + # Local Shield Repper Bonuses + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), + 'duration', + src.getModifiedItemAttr('industrialCoreLocalLogisticsDurationBonus'), + ) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), + 'shieldBonus', + src.getModifiedItemAttr('industrialCoreLocalLogisticsAmountBonus'), + stackingPenalties=True + ) + + # Mining Burst Bonuses + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), + 'warfareBuff1Value', + src.getModifiedItemAttr('industrialCoreBonusMiningBurstStrength'), + ) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), + 'warfareBuff2Value', + src.getModifiedItemAttr('industrialCoreBonusMiningBurstStrength'), + ) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), + 'warfareBuff3Value', + src.getModifiedItemAttr('industrialCoreBonusMiningBurstStrength'), + ) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), + 'warfareBuff4Value', + src.getModifiedItemAttr('industrialCoreBonusMiningBurstStrength'), + ) + + # Command Burst Range Bonus + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), + 'maxRange', + src.getModifiedItemAttr('industrialCoreBonusCommandBurstRange'), + stackingPenalties=True + ) + + # Drone Bonuses + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Ice Harvesting Drone Operation'), + 'duration', + src.getModifiedItemAttr('industrialCoreBonusDroneIceHarvesting'), + ) + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', + src.getModifiedItemAttr('industrialCoreBonusDroneMining'), + ) + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxVelocity', + src.getModifiedItemAttr('industrialCoreBonusDroneVelocity'), + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', + src.getModifiedItemAttr('industrialCoreBonusDroneDamageHP'), + stackingPenalties=True + ) + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'shieldCapacity', + src.getModifiedItemAttr('industrialCoreBonusDroneDamageHP'), + ) + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'armorHP', + src.getModifiedItemAttr('industrialCoreBonusDroneDamageHP'), + ) + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'hp', + src.getModifiedItemAttr('industrialCoreBonusDroneDamageHP'), + ) + + # Todo: remote impedance (no reps, etc) + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('siegeModeWarpStatus')) + fit.ship.boostItemAttr('remoteRepairImpedance', src.getModifiedItemAttr('remoteRepairImpedanceBonus')) + fit.ship.increaseItemAttr('disallowTethering', src.getModifiedItemAttr('disallowTethering')) + fit.ship.boostItemAttr('sensorDampenerResistance', src.getModifiedItemAttr('sensorDampenerResistanceBonus')) + fit.ship.boostItemAttr('remoteAssistanceImpedance', src.getModifiedItemAttr('remoteAssistanceImpedanceBonus')) + fit.ship.increaseItemAttr('disallowDocking', src.getModifiedItemAttr('disallowDocking')) + + +class Effect4576(BaseEffect): + """ + eliteBonusLogisticsTrackingLinkFalloffBonus1 + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'falloffBonus', ship.getModifiedItemAttr('eliteBonusLogistics1'), + skill='Logistics Cruisers') + + +class Effect4577(BaseEffect): + """ + eliteBonusLogisticsTrackingLinkFalloffBonus2 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Tracking Computer', + 'falloffBonus', ship.getModifiedItemAttr('eliteBonusLogistics2'), + skill='Logistics Cruisers') + + +class Effect4579(BaseEffect): + """ + droneRigStasisWebSpeedFactorBonus + + Used by: + Modules named like: Stasis Drone Augmentor (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Stasis Webifying Drone', + 'speedFactor', module.getModifiedItemAttr('webSpeedFactorBonus')) + + +class Effect4619(BaseEffect): + """ + shipBonusDroneDamageGF2 + + Used by: + Ship: Utu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect4620(BaseEffect): + """ + shipBonusWarpScramblerMaxRangeGF2 + + Used by: + Ship: Garmur + Ship: Utu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'maxRange', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect4621(BaseEffect): + """ + shipBonusHeatDamageATF1 + + Used by: + Ship: Cambion + Ship: Etana + Ship: Utu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusATF1')) + + +class Effect4622(BaseEffect): + """ + shipBonusSmallHybridMaxRangeATF2 + + Used by: + Ship: Utu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusATF2')) + + +class Effect4623(BaseEffect): + """ + shipBonusSmallHybridTrackingSpeedATF2 + + Used by: + Ship: Utu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusATF2')) + + +class Effect4624(BaseEffect): + """ + shipBonusHybridTrackingATC2 + + Used by: + Ship: Adrestia + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusATC2')) + + +class Effect4625(BaseEffect): + """ + shipBonusHybridFalloffATC2 + + Used by: + Ship: Adrestia + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusATC2')) + + +class Effect4626(BaseEffect): + """ + shipBonusWarpScramblerMaxRangeGC2 + + Used by: + Ship: Adrestia + Ship: Orthrus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'maxRange', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect4635(BaseEffect): + """ + eliteBonusMaraudersCruiseAndTorpedoDamageRole1 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('em', 'explosive', 'kinetic', 'thermal') + for damageType in damageTypes: + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Cruise Missiles') or mod.charge.requiresSkill('Torpedoes'), + '{0}Damage'.format(damageType), ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect4636(BaseEffect): + """ + shipBonusAoeVelocityCruiseAndTorpedoCB2 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Cruise Missiles') or mod.charge.requiresSkill('Torpedoes'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect4637(BaseEffect): + """ + shipCruiseAndTorpedoVelocityBonusCB3 + + Used by: + Ship: Golem + Ship: Widow + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Cruise Missiles') or mod.charge.requiresSkill('Torpedoes'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCB3'), skill='Caldari Battleship') + + +class Effect4640(BaseEffect): + """ + shipArmorEMAndExpAndkinAndThmResistanceAC2 + + Used by: + Ships named like: Stratios (2 of 2) + Ship: Sacrilege + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('Em', 'Explosive', 'Kinetic', 'Thermal') + for damageType in damageTypes: + fit.ship.boostItemAttr('armor{0}DamageResonance'.format(damageType), ship.getModifiedItemAttr('shipBonusAC2'), + skill='Amarr Cruiser') + + +class Effect4643(BaseEffect): + """ + shipHeavyAssaultMissileEMAndExpAndKinAndThmDmgAC1 + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('em', 'explosive', 'kinetic', 'thermal') + for damageType in damageTypes: + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + '{0}Damage'.format(damageType), ship.getModifiedItemAttr('shipBonusAC'), + skill='Amarr Cruiser') + + +class Effect4645(BaseEffect): + """ + eliteBonusHeavyGunshipHeavyAndHeavyAssaultAndAssaultMissileLauncherROF + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + groups = ('Missile Launcher Rapid Light', 'Missile Launcher Heavy Assault', 'Missile Launcher Heavy') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'speed', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect4648(BaseEffect): + """ + eliteBonusBlackOpsECMGravAndLadarAndMagnetometricAndRadarStrength1 + + Used by: + Ship: Widow + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + sensorTypes = ('Gravimetric', 'Ladar', 'Magnetometric', 'Radar') + for type in sensorTypes: + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'scan{0}StrengthBonus'.format(type), + ship.getModifiedItemAttr('eliteBonusBlackOps1'), skill='Black Ops') + + +class Effect4649(BaseEffect): + """ + shipCruiseAndSiegeLauncherROFBonus2CB + + Used by: + Ship: Widow + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + affectedGroups = ('Missile Launcher Cruise', 'Missile Launcher Torpedo') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in affectedGroups, + 'speed', ship.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect4667(BaseEffect): + """ + shipBonusNoctisSalvageCycle + + Used by: + Ship: Noctis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Salvaging'), + 'duration', ship.getModifiedItemAttr('shipBonusOreIndustrial1'), + skill='ORE Industrial') + + +class Effect4668(BaseEffect): + """ + shipBonusNoctisTractorCycle + + Used by: + Ship: Noctis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', + 'duration', ship.getModifiedItemAttr('shipBonusOreIndustrial1'), + skill='ORE Industrial') + + +class Effect4669(BaseEffect): + """ + shipBonusNoctisTractorVelocity + + Used by: + Ship: Noctis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', + 'maxTractorVelocity', ship.getModifiedItemAttr('shipBonusOreIndustrial2'), + skill='ORE Industrial') + + +class Effect4670(BaseEffect): + """ + shipBonusNoctisTractorRange + + Used by: + Ship: Noctis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Tractor Beam', + 'maxRange', ship.getModifiedItemAttr('shipBonusOreIndustrial2'), + skill='ORE Industrial') + + +class Effect4728(BaseEffect): + """ + OffensiveDefensiveReduction + + Used by: + Celestials named like: Drifter Incursion (6 of 6) + Celestials named like: Incursion ship attributes effects (3 of 3) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + damages = ('em', 'thermal', 'kinetic', 'explosive') + for damage in damages: + # Nerf missile damage + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + '{0}Damage'.format(damage), + beacon.getModifiedItemAttr('systemEffectDamageReduction')) + # Nerf smartbomb damage + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Smart Bomb', + '{0}Damage'.format(damage), + beacon.getModifiedItemAttr('systemEffectDamageReduction')) + # Nerf armor resistances + fit.ship.boostItemAttr('armor{0}DamageResonance'.format(damage.capitalize()), + beacon.getModifiedItemAttr('armor{0}DamageResistanceBonus'.format(damage.capitalize()))) + # Nerf shield resistances + fit.ship.boostItemAttr('shield{0}DamageResonance'.format(damage.capitalize()), + beacon.getModifiedItemAttr('shield{0}DamageResistanceBonus'.format(damage.capitalize()))) + # Nerf drone damage output + fit.drones.filteredItemBoost(lambda drone: True, + 'damageMultiplier', beacon.getModifiedItemAttr('systemEffectDamageReduction')) + # Nerf turret damage output + fit.modules.filteredItemBoost(lambda module: module.item.requiresSkill('Gunnery'), + 'damageMultiplier', beacon.getModifiedItemAttr('systemEffectDamageReduction')) + + +class Effect4760(BaseEffect): + """ + subsystemBonusCaldariPropulsionWarpCapacitor + + Used by: + Subsystem: Tengu Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpCapacitorNeed', src.getModifiedItemAttr('subsystemBonusCaldariPropulsion'), + skill='Caldari Propulsion Systems') + + +class Effect4775(BaseEffect): + """ + shipEnergyNeutralizerTransferAmountBonusAF2 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', ship.getModifiedItemAttr('shipBonus2AF'), + skill='Amarr Frigate') + + +class Effect4782(BaseEffect): + """ + shipBonusSmallEnergyWeaponOptimalRangeATF2 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusATF2')) + + +class Effect4789(BaseEffect): + """ + shipBonusSmallEnergyTurretDamageATF1 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusATF1')) + + +class Effect4793(BaseEffect): + """ + shipBonusMissileLauncherHeavyROFATC1 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy', + 'speed', ship.getModifiedItemAttr('shipBonusATC1')) + + +class Effect4794(BaseEffect): + """ + shipBonusMissileLauncherAssaultROFATC1 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Light', + 'speed', ship.getModifiedItemAttr('shipBonusATC1')) + + +class Effect4795(BaseEffect): + """ + shipBonusMissileLauncherHeavyAssaultROFATC1 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy Assault', + 'speed', ship.getModifiedItemAttr('shipBonusATC1')) + + +class Effect4799(BaseEffect): + """ + eliteBonusBlackOpsECMBurstGravAndLadarAndMagnetoAndRadar + + Used by: + Ship: Widow + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + sensorTypes = ('Gravimetric', 'Ladar', 'Magnetometric', 'Radar') + for type in sensorTypes: + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Burst Jammer', + 'scan{0}StrengthBonus'.format(type), + ship.getModifiedItemAttr('eliteBonusBlackOps1'), skill='Black Ops') + + +class Effect4804(BaseEffect): + """ + dataMiningSkillBoostAccessDifficultyBonusAbsolutePercent + + Used by: + Skill: Archaeology + Skill: Hacking + Skill: Salvaging + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill(skill), 'accessDifficultyBonus', + skill.getModifiedItemAttr('accessDifficultyBonusAbsolutePercent') * skill.level) + + +class Effect4809(BaseEffect): + """ + ecmGravimetricStrengthBonusPercent + + Used by: + Modules from group: ECM Stabilizer (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanGravimetricStrengthBonus', module.getModifiedItemAttr('ecmStrengthBonusPercent'), + stackingPenalties=True) + + +class Effect4810(BaseEffect): + """ + ecmLadarStrengthBonusPercent + + Used by: + Modules from group: ECM Stabilizer (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanLadarStrengthBonus', module.getModifiedItemAttr('ecmStrengthBonusPercent'), + stackingPenalties=True) + + +class Effect4811(BaseEffect): + """ + ecmMagnetometricStrengthBonusPercent + + Used by: + Modules from group: ECM Stabilizer (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanMagnetometricStrengthBonus', + module.getModifiedItemAttr('ecmStrengthBonusPercent'), + stackingPenalties=True) + + +class Effect4812(BaseEffect): + """ + ecmRadarStrengthBonusPercent + + Used by: + Modules from group: ECM Stabilizer (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scanRadarStrengthBonus', module.getModifiedItemAttr('ecmStrengthBonusPercent'), + stackingPenalties=True) + + +class Effect4814(BaseEffect): + """ + jumpPortalConsumptionBonusPercentSkill + + Used by: + Skill: Jump Portal Generation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), 'consumptionQuantity', + skill.getModifiedItemAttr('consumptionQuantityBonusPercent') * skill.level) + + +class Effect4817(BaseEffect): + """ + salvagerModuleDurationReduction + + Used by: + Implant: Poteque 'Prospector' Environmental Analysis EY-1005 + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Salvager', + 'duration', implant.getModifiedItemAttr('durationBonus')) + + +class Effect4820(BaseEffect): + """ + bcLargeEnergyTurretPowerNeedBonus + + Used by: + Ship: Oracle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'power', ship.getModifiedItemAttr('bcLargeTurretPower')) + + +class Effect4821(BaseEffect): + """ + bcLargeHybridTurretPowerNeedBonus + + Used by: + Ship: Naga + Ship: Talos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'power', ship.getModifiedItemAttr('bcLargeTurretPower')) + + +class Effect4822(BaseEffect): + """ + bcLargeProjectileTurretPowerNeedBonus + + Used by: + Ship: Tornado + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'power', ship.getModifiedItemAttr('bcLargeTurretPower')) + + +class Effect4823(BaseEffect): + """ + bcLargeEnergyTurretCPUNeedBonus + + Used by: + Ship: Oracle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'cpu', ship.getModifiedItemAttr('bcLargeTurretCPU')) + + +class Effect4824(BaseEffect): + """ + bcLargeHybridTurretCPUNeedBonus + + Used by: + Ship: Naga + Ship: Talos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'cpu', ship.getModifiedItemAttr('bcLargeTurretCPU')) + + +class Effect4825(BaseEffect): + """ + bcLargeProjectileTurretCPUNeedBonus + + Used by: + Ship: Tornado + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'cpu', ship.getModifiedItemAttr('bcLargeTurretCPU')) + + +class Effect4826(BaseEffect): + """ + bcLargeEnergyTurretCapacitorNeedBonus + + Used by: + Ship: Oracle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('bcLargeTurretCap')) + + +class Effect4827(BaseEffect): + """ + bcLargeHybridTurretCapacitorNeedBonus + + Used by: + Ship: Naga + Ship: Talos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('bcLargeTurretCap')) + + +class Effect4867(BaseEffect): + """ + setBonusChristmasPowergrid + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'powerEngineeringOutputBonus', + implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect4868(BaseEffect): + """ + setBonusChristmasCapacitorCapacity + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'capacitorCapacityBonus', + implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect4869(BaseEffect): + """ + setBonusChristmasCPUOutput + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'cpuOutputBonus2', implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect4871(BaseEffect): + """ + setBonusChristmasCapacitorRecharge2 + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'capRechargeBonus', implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect4896(BaseEffect): + """ + shipBonusDroneHitpointsGF2 + + Used by: + Ship: Ishkur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'hp', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect4897(BaseEffect): + """ + shipBonusDroneArmorHitpointsGF2 + + Used by: + Ship: Ishkur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'armorHP', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect4898(BaseEffect): + """ + shipBonusDroneShieldHitpointsGF2 + + Used by: + Ship: Ishkur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect4901(BaseEffect): + """ + shipMissileSpeedBonusAF + + Used by: + Ship: Vengeance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect4902(BaseEffect): + """ + MWDSignatureRadiusRoleBonus + + Used by: + Ships from group: Assault Frigate (8 of 12) + Ships from group: Command Destroyer (4 of 4) + Ships from group: Heavy Assault Cruiser (8 of 11) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', ship.getModifiedItemAttr('MWDSignatureRadiusBonus')) + + +class Effect4906(BaseEffect): + """ + systemDamageFighters + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.drones.filteredItemMultiply(lambda drone: drone.item.requiresSkill('Fighters'), + 'damageMultiplier', beacon.getModifiedItemAttr('damageMultiplierMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4911(BaseEffect): + """ + modifyShieldRechargeRatePassive + + Used by: + Modules named like: Processor Overclocking Unit (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('shieldRechargeRate', module.getModifiedItemAttr('shieldRechargeRateMultiplier')) + + +class Effect4921(BaseEffect): + """ + microJumpDrive + + Used by: + Modules from group: Micro Jump Drive (2 of 2) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadiusBonusPercent')) + + +class Effect4923(BaseEffect): + """ + skillMJDdurationBonus + + Used by: + Skill: Micro Jump Drive Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Micro Jump Drive Operation'), + 'duration', skill.getModifiedItemAttr('durationBonus') * skill.level) + + +class Effect4928(BaseEffect): + """ + adaptiveArmorHardener + + Used by: + Module: Reactive Armor Hardener + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + # pyfalog = Logger(__name__) + + damagePattern = fit.damagePattern + # pyfalog.debug('==============================') + + static_adaptive_behavior = eos.config.settings['useStaticAdaptiveArmorHardener'] + + if (damagePattern.emAmount == damagePattern.thermalAmount == damagePattern.kineticAmount == damagePattern.explosiveAmount) and static_adaptive_behavior: + # pyfalog.debug('Setting adaptivearmorhardener resists to uniform profile.') + for attr in ('armorEmDamageResonance', 'armorThermalDamageResonance', 'armorKineticDamageResonance', 'armorExplosiveDamageResonance'): + fit.ship.multiplyItemAttr(attr, module.getModifiedItemAttr(attr), stackingPenalties=True, penaltyGroup='preMul') + return + + # Skip if there is no damage pattern. Example: projected ships or fleet boosters + if damagePattern: + + # Populate a tuple with the damage profile modified by current armor resists. + baseDamageTaken = ( + damagePattern.emAmount * fit.ship.getModifiedItemAttr('armorEmDamageResonance'), + damagePattern.thermalAmount * fit.ship.getModifiedItemAttr('armorThermalDamageResonance'), + damagePattern.kineticAmount * fit.ship.getModifiedItemAttr('armorKineticDamageResonance'), + damagePattern.explosiveAmount * fit.ship.getModifiedItemAttr('armorExplosiveDamageResonance'), + ) + # pyfalog.debug('Damage Adjusted for Armor Resists: %f/%f/%f/%f' % (baseDamageTaken[0], baseDamageTaken[1], baseDamageTaken[2], baseDamageTaken[3])) + + resistanceShiftAmount = module.getModifiedItemAttr( + 'resistanceShiftAmount') / 100 # The attribute is in percent and we want a fraction + RAHResistance = [ + module.getModifiedItemAttr('armorEmDamageResonance'), + module.getModifiedItemAttr('armorThermalDamageResonance'), + module.getModifiedItemAttr('armorKineticDamageResonance'), + module.getModifiedItemAttr('armorExplosiveDamageResonance'), + ] + + # Simulate RAH cycles until the RAH either stops changing or enters a loop. + # The number of iterations is limited to prevent an infinite loop if something goes wrong. + cycleList = [] + loopStart = -20 + for num in range(50): + # pyfalog.debug('Starting cycle %d.' % num) + # The strange order is to emulate the ingame sorting when different types have taken the same amount of damage. + # This doesn't take into account stacking penalties. In a few cases fitting a Damage Control causes an inaccurate result. + damagePattern_tuples = [ + (0, baseDamageTaken[0] * RAHResistance[0], RAHResistance[0]), + (3, baseDamageTaken[3] * RAHResistance[3], RAHResistance[3]), + (2, baseDamageTaken[2] * RAHResistance[2], RAHResistance[2]), + (1, baseDamageTaken[1] * RAHResistance[1], RAHResistance[1]), + ] + + # Sort the tuple to drop the highest damage value to the bottom + sortedDamagePattern_tuples = sorted(damagePattern_tuples, key=lambda damagePattern: damagePattern[1]) + + if sortedDamagePattern_tuples[2][1] == 0: + # One damage type: the top damage type takes from the other three + # Since the resistances not taking damage will end up going to the type taking damage we just do the whole thing at once. + change0 = 1 - sortedDamagePattern_tuples[0][2] + change1 = 1 - sortedDamagePattern_tuples[1][2] + change2 = 1 - sortedDamagePattern_tuples[2][2] + change3 = -(change0 + change1 + change2) + elif sortedDamagePattern_tuples[1][1] == 0: + # Two damage types: the top two damage types take from the other two + # Since the resistances not taking damage will end up going equally to the types taking damage we just do the whole thing at once. + change0 = 1 - sortedDamagePattern_tuples[0][2] + change1 = 1 - sortedDamagePattern_tuples[1][2] + change2 = -(change0 + change1) / 2 + change3 = -(change0 + change1) / 2 + else: + # Three or four damage types: the top two damage types take from the other two + change0 = min(resistanceShiftAmount, 1 - sortedDamagePattern_tuples[0][2]) + change1 = min(resistanceShiftAmount, 1 - sortedDamagePattern_tuples[1][2]) + change2 = -(change0 + change1) / 2 + change3 = -(change0 + change1) / 2 + + RAHResistance[sortedDamagePattern_tuples[0][0]] = sortedDamagePattern_tuples[0][2] + change0 + RAHResistance[sortedDamagePattern_tuples[1][0]] = sortedDamagePattern_tuples[1][2] + change1 + RAHResistance[sortedDamagePattern_tuples[2][0]] = sortedDamagePattern_tuples[2][2] + change2 + RAHResistance[sortedDamagePattern_tuples[3][0]] = sortedDamagePattern_tuples[3][2] + change3 + # pyfalog.debug('Resistances shifted to %f/%f/%f/%f' % ( RAHResistance[0], RAHResistance[1], RAHResistance[2], RAHResistance[3])) + + # See if the current RAH profile has been encountered before, indicating a loop. + for i, val in enumerate(cycleList): + tolerance = 1e-06 + if abs(RAHResistance[0] - val[0]) <= tolerance and \ + abs(RAHResistance[1] - val[1]) <= tolerance and \ + abs(RAHResistance[2] - val[2]) <= tolerance and \ + abs(RAHResistance[3] - val[3]) <= tolerance: + loopStart = i + # pyfalog.debug('Loop found: %d-%d' % (loopStart, num)) + break + if loopStart >= 0: + break + + cycleList.append(list(RAHResistance)) + + # if loopStart < 0: + # pyfalog.error('Reactive Armor Hardener failed to find equilibrium. Damage profile after armor: {0}/{1}/{2}/{3}'.format( + # baseDamageTaken[0], baseDamageTaken[1], baseDamageTaken[2], baseDamageTaken[3])) + + # Average the profiles in the RAH loop, or the last 20 if it didn't find a loop. + loopCycles = cycleList[loopStart:] + numCycles = len(loopCycles) + average = [0, 0, 0, 0] + for cycle in loopCycles: + for i in range(4): + average[i] += cycle[i] + + for i in range(4): + average[i] = round(average[i] / numCycles, 3) + + # Set the new resistances + # pyfalog.debug('Setting new resist profile: %f/%f/%f/%f' % ( average[0], average[1], average[2],average[3])) + for i, attr in enumerate(( + 'armorEmDamageResonance', 'armorThermalDamageResonance', 'armorKineticDamageResonance', + 'armorExplosiveDamageResonance')): + module.increaseItemAttr(attr, average[i] - module.getModifiedItemAttr(attr)) + fit.ship.multiplyItemAttr(attr, average[i], stackingPenalties=True, penaltyGroup='preMul') + + +class Effect4934(BaseEffect): + """ + shipArmorRepairingGF2 + + Used by: + Ship: Incursus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusGF2'), + skill='Gallente Frigate') + + +class Effect4936(BaseEffect): + """ + fueledShieldBoosting + + Used by: + Modules from group: Ancillary Shield Booster (8 of 8) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + amount = module.getModifiedItemAttr('shieldBonus') + speed = module.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('shieldRepair', amount / speed) + + +class Effect4941(BaseEffect): + """ + shipHybridDamageBonusCF2 + + Used by: + Ship: Griffin Navy Issue + Ship: Merlin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect4942(BaseEffect): + """ + targetBreaker + + Used by: + Module: Target Spectrum Breaker + """ + + type = 'active' + + +class Effect4945(BaseEffect): + """ + skillTargetBreakerDurationBonus2 + + Used by: + Skill: Target Breaker Amplification + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Breaker', + 'duration', skill.getModifiedItemAttr('durationBonus') * skill.level) + + +class Effect4946(BaseEffect): + """ + skillTargetBreakerCapNeedBonus2 + + Used by: + Skill: Target Breaker Amplification + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Breaker', + 'capacitorNeed', skill.getModifiedItemAttr('capNeedBonus') * skill.level) + + +class Effect4950(BaseEffect): + """ + shipBonusShieldBoosterMB1a + + Used by: + Ship: Maelstrom + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect4951(BaseEffect): + """ + shieldBoostAmplifierPassiveBooster + + Used by: + Implants named like: Agency 'Hardshell' TB Dose (4 of 4) + Implants named like: Blue Pill Booster (5 of 5) + Implant: Antipharmakon Thureo + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Operation') or mod.item.requiresSkill('Capital Shield Operation'), + 'shieldBonus', container.getModifiedItemAttr('shieldBoostMultiplier')) + + +class Effect4961(BaseEffect): + """ + systemShieldRepairAmountShieldSkills + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Shield Operation') or + mod.item.requiresSkill('Capital Shield Operation'), + 'shieldBonus', module.getModifiedItemAttr('shieldBonusMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect4967(BaseEffect): + """ + shieldBoosterDurationBonusShieldSkills + + Used by: + Modules named like: Core Defense Operational Solidifier (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Operation') or mod.item.requiresSkill('Capital Shield Operation'), + 'duration', module.getModifiedItemAttr('durationSkillBonus')) + + +class Effect4970(BaseEffect): + """ + boosterShieldBoostAmountPenaltyShieldSkills + + Used by: + Implants named like: Crash Booster (3 of 4) + Implants named like: Frentix Booster (3 of 4) + Implants named like: Mindflood Booster (3 of 4) + """ + + attr = 'boosterShieldBoostAmountPenalty' + displayName = 'Shield Boost' + type = 'boosterSideEffect' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), 'shieldBonus', + src.getModifiedItemAttr('boosterShieldBoostAmountPenalty')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), 'shieldBonus', + src.getModifiedItemAttr('boosterShieldBoostAmountPenalty')) + + +class Effect4972(BaseEffect): + """ + eliteBonusAssaultShipLightMissileROF + + Used by: + Ship: Cambion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Light', + 'speed', ship.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect4973(BaseEffect): + """ + eliteBonusAssaultShipRocketROF + + Used by: + Ship: Cambion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rocket', + 'speed', ship.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect4974(BaseEffect): + """ + eliteBonusMarauderShieldBonus2a + + Used by: + Ship: Golem + Ship: Vargur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('eliteBonusViolators2'), skill='Marauders') + + +class Effect4975(BaseEffect): + """ + shipBonusMissileKineticlATF2 + + Used by: + Ship: Cambion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusATF2')) + + +class Effect4976(BaseEffect): + """ + skillReactiveArmorHardenerDurationBonus + + Used by: + Skill: Resistance Phasing + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Resistance Shift Hardener', 'duration', + src.getModifiedItemAttr('durationBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Resistance Phasing'), 'duration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect4989(BaseEffect): + """ + missileSkillAoeCloudSizeBonusAllIncludingCapitals + + Used by: + Implants named like: Crash Booster (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeCloudSize', implant.getModifiedItemAttr('aoeCloudSizeBonus')) + + +class Effect4990(BaseEffect): + """ + shipEnergyTCapNeedBonusRookie + + Used by: + Ship: Hematos + Ship: Impairor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('rookieSETCapBonus')) + + +class Effect4991(BaseEffect): + """ + shipSETDmgBonusRookie + + Used by: + Ship: Hematos + Ship: Immolator + Ship: Impairor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('rookieSETDamageBonus')) + + +class Effect4994(BaseEffect): + """ + shipArmorEMResistanceRookie + + Used by: + Ship: Devoter + Ship: Gold Magnate + Ship: Impairor + Ship: Phobos + Ship: Silver Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('rookieArmorResistanceBonus')) + + +class Effect4995(BaseEffect): + """ + shipArmorEXResistanceRookie + + Used by: + Ship: Devoter + Ship: Gold Magnate + Ship: Impairor + Ship: Phobos + Ship: Silver Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('rookieArmorResistanceBonus')) + + +class Effect4996(BaseEffect): + """ + shipArmorKNResistanceRookie + + Used by: + Ship: Devoter + Ship: Gold Magnate + Ship: Impairor + Ship: Phobos + Ship: Silver Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('rookieArmorResistanceBonus')) + + +class Effect4997(BaseEffect): + """ + shipArmorTHResistanceRookie + + Used by: + Ship: Devoter + Ship: Gold Magnate + Ship: Impairor + Ship: Phobos + Ship: Silver Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('rookieArmorResistanceBonus')) + + +class Effect4999(BaseEffect): + """ + shipHybridRangeBonusRookie + + Used by: + Ship: Ibis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('rookieSHTOptimalBonus')) + + +class Effect5000(BaseEffect): + """ + shipMissileKineticDamageRookie + + Used by: + Ship: Ibis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('rookieMissileKinDamageBonus')) + + +class Effect5008(BaseEffect): + """ + shipShieldEMResistanceRookie + + Used by: + Ships from group: Heavy Interdiction Cruiser (3 of 5) + Ship: Ibis + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', ship.getModifiedItemAttr('rookieShieldResistBonus')) + + +class Effect5009(BaseEffect): + """ + shipShieldExplosiveResistanceRookie + + Used by: + Ships from group: Heavy Interdiction Cruiser (3 of 5) + Ship: Ibis + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', ship.getModifiedItemAttr('rookieShieldResistBonus')) + + +class Effect5011(BaseEffect): + """ + shipShieldKineticResistanceRookie + + Used by: + Ships from group: Heavy Interdiction Cruiser (3 of 5) + Ship: Ibis + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', ship.getModifiedItemAttr('rookieShieldResistBonus')) + + +class Effect5012(BaseEffect): + """ + shipShieldThermalResistanceRookie + + Used by: + Ships from group: Heavy Interdiction Cruiser (3 of 5) + Ship: Ibis + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', ship.getModifiedItemAttr('rookieShieldResistBonus')) + + +class Effect5013(BaseEffect): + """ + shipSHTDmgBonusRookie + + Used by: + Ship: Velator + Ship: Violator + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('rookieSHTDamageBonus')) + + +class Effect5014(BaseEffect): + """ + shipBonusDroneDamageMultiplierRookie + + Used by: + Ship: Gnosis + Ship: Praxis + Ship: Sunesis + Ship: Taipan + Ship: Velator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('rookieDroneBonus')) + + +class Effect5015(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerMaxTargetRangeBonusRookie + + Used by: + Ship: Velator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'maxTargetRangeBonus', ship.getModifiedItemAttr('rookieDampStrengthBonus')) + + +class Effect5016(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerScanResolutionBonusRookie + + Used by: + Ship: Velator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'scanResolutionBonus', ship.getModifiedItemAttr('rookieDampStrengthBonus')) + + +class Effect5017(BaseEffect): + """ + shipArmorRepairingRookie + + Used by: + Ship: Velator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('rookieArmorRepBonus')) + + +class Effect5018(BaseEffect): + """ + shipVelocityBonusRookie + + Used by: + Ship: Reaper + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('maxVelocity', ship.getModifiedItemAttr('rookieShipVelocityBonus')) + + +class Effect5019(BaseEffect): + """ + minmatarShipEwTargetPainterRookie + + Used by: + Ship: Reaper + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'signatureRadiusBonus', ship.getModifiedItemAttr('rookieTargetPainterStrengthBonus')) + + +class Effect5020(BaseEffect): + """ + shipSPTDmgBonusRookie + + Used by: + Ship: Echo + Ship: Reaper + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('rookieSPTDamageBonus')) + + +class Effect5021(BaseEffect): + """ + shipShieldBoostRookie + + Used by: + Ship: Immolator + Ship: Reaper + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('rookieShieldBoostBonus')) + + +class Effect5028(BaseEffect): + """ + shipECMScanStrengthBonusRookie + + Used by: + Ship: Ibis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('Gravimetric', 'Ladar', 'Radar', 'Magnetometric'): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', + 'scan{0}StrengthBonus'.format(type), + ship.getModifiedItemAttr('rookieECMStrengthBonus')) + + +class Effect5029(BaseEffect): + """ + shipBonusDroneMiningAmountRole + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', + src.getModifiedItemAttr('roleBonusDroneMiningYield'), + ) + + +class Effect5030(BaseEffect): + """ + shipBonusMiningDroneAmountPercentRookie + + Used by: + Ship: Gnosis + Ship: Praxis + Ship: Taipan + Ship: Velator + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', container.getModifiedItemAttr('rookieDroneBonus')) + + +class Effect5035(BaseEffect): + """ + shipBonusDroneHitpointsRookie + + Used by: + Variations of ship: Procurer (2 of 2) + Ship: Gnosis + Ship: Praxis + Ship: Sunesis + Ship: Taipan + Ship: Velator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for type in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + type, ship.getModifiedItemAttr('rookieDroneBonus')) + + +class Effect5036(BaseEffect): + """ + shipBonusSalvageCycleAF + + Used by: + Ship: Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Salvaging'), + 'duration', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect5045(BaseEffect): + """ + shipBonusSalvageCycleCF + + Used by: + Ship: Heron + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Salvaging'), + 'duration', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect5048(BaseEffect): + """ + shipBonusSalvageCycleGF + + Used by: + Ship: Imicus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Salvaging'), + 'duration', ship.getModifiedItemAttr('shipBonusGF'), skill='Amarr Frigate') + + +class Effect5051(BaseEffect): + """ + shipBonusSalvageCycleMF + + Used by: + Ship: Probe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Salvaging'), + 'duration', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect5055(BaseEffect): + """ + iceHarvesterDurationMultiplier + + Used by: + Ship: Endurance + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Ice Harvesting'), + 'duration', ship.getModifiedItemAttr('iceHarvestCycleBonus')) + + +class Effect5058(BaseEffect): + """ + miningYieldMultiplyPassive + + Used by: + Variations of ship: Venture (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Mining'), + 'miningAmount', module.getModifiedItemAttr('miningAmountMultiplier')) + + +class Effect5059(BaseEffect): + """ + shipBonusIceHarvesterDurationORE3 + + Used by: + Ships from group: Exhumer (3 of 3) + Ships from group: Mining Barge (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), + 'duration', container.getModifiedItemAttr('shipBonusORE3'), skill='Mining Barge') + + +class Effect5066(BaseEffect): + """ + shipBonusTargetPainterOptimalMF1 + + Used by: + Ship: Hyena + Ship: Vigil + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Target Painting'), + 'maxRange', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect5067(BaseEffect): + """ + shipBonusOreHoldORE2 + + Used by: + Variations of ship: Retriever (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('specialOreHoldCapacity', ship.getModifiedItemAttr('shipBonusORE2'), skill='Mining Barge') + + +class Effect5068(BaseEffect): + """ + shipBonusShieldCapacityORE2 + + Used by: + Variations of ship: Procurer (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldCapacity', ship.getModifiedItemAttr('shipBonusORE2'), skill='Mining Barge') + + +class Effect5069(BaseEffect): + """ + mercoxitCrystalBonus + + Used by: + Module: Medium Mercoxit Mining Crystal Optimization I + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Mercoxit Processing'), + 'specialisationAsteroidYieldMultiplier', + module.getModifiedItemAttr('miningAmountBonus')) + + +class Effect5079(BaseEffect): + """ + shipMissileKineticDamageCF2 + + Used by: + Ship: Garmur + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5080(BaseEffect): + """ + shipMissileVelocityCF + + Used by: + Ship: Caldari Navy Hookbill + Ship: Crow + Ship: Kestrel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect5081(BaseEffect): + """ + maxTargetingRangeBonusPostPercentPassive + + Used by: + Modules named like: Ionic Field Projector (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True) + + +class Effect5087(BaseEffect): + """ + shipBonusDroneHitpointsGF + + Used by: + Ship: Astero + Ship: Maulus Navy Issue + Ship: Tristan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for layer in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + layer, ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect5090(BaseEffect): + """ + shipShieldBoostMF + + Used by: + Ship: Breacher + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect5103(BaseEffect): + """ + shipBonusShieldTransferCapNeedCF + + Used by: + Variations of ship: Bantam (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect5104(BaseEffect): + """ + shipBonusShieldTransferBoostAmountCF2 + + Used by: + Variations of ship: Bantam (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5105(BaseEffect): + """ + shipBonusShieldTransferCapNeedMF + + Used by: + Variations of ship: Burst (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect5106(BaseEffect): + """ + shipBonusShieldTransferBoostAmountMF2 + + Used by: + Variations of ship: Burst (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect5107(BaseEffect): + """ + shipBonusRemoteArmorRepairCapNeedGF + + Used by: + Variations of ship: Navitas (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect5108(BaseEffect): + """ + shipBonusRemoteArmorRepairAmountGF2 + + Used by: + Variations of ship: Navitas (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusGF2'), + skill='Gallente Frigate') + + +class Effect5109(BaseEffect): + """ + shipBonusRemoteArmorRepairCapNeedAF + + Used by: + Ship: Deacon + Ship: Inquisitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect5110(BaseEffect): + """ + shipBonusRemoteArmorRepairAmount2AF + + Used by: + Ship: Deacon + Ship: Inquisitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect5111(BaseEffect): + """ + shipBonusDroneTrackingGF + + Used by: + Ship: Maulus Navy Issue + Ship: Tristan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect5119(BaseEffect): + """ + shipBonusScanProbeStrength2AF + + Used by: + Ship: Magnate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Scanner Probe', + 'baseSensorStrength', ship.getModifiedItemAttr('shipBonus2AF'), + skill='Amarr Frigate') + + +class Effect5121(BaseEffect): + """ + energyTransferArrayTransferAmountBonus + + Used by: + Ship: Augoror + Ship: Osprey + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'powerTransferAmount', ship.getModifiedItemAttr('energyTransferAmountBonus')) + + +class Effect5122(BaseEffect): + """ + shipBonusShieldTransferCapneedMC1 + + Used by: + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + + +class Effect5123(BaseEffect): + """ + shipBonusRemoteArmorRepairCapNeedAC1 + + Used by: + Ship: Augoror + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect5124(BaseEffect): + """ + shipBonusRemoteArmorRepairAmountAC2 + + Used by: + Ship: Augoror + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect5125(BaseEffect): + """ + shipBonusRemoteArmorRepairAmountGC2 + + Used by: + Ship: Exequror + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusGC2'), + skill='Gallente Cruiser') + + +class Effect5126(BaseEffect): + """ + shipBonusShieldTransferBoostAmountCC2 + + Used by: + Ship: Osprey + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect5127(BaseEffect): + """ + shipBonusShieldTransferBoostAmountMC2 + + Used by: + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect5128(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerOptimalBonusGC1 + + Used by: + Ship: Celestis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'maxRange', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect5129(BaseEffect): + """ + minmatarShipEwTargetPainterMC1 + + Used by: + Ship: Bellicose + Ship: Rapier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', + 'signatureRadiusBonus', ship.getModifiedItemAttr('shipBonusMC'), + skill='Minmatar Cruiser') + + +class Effect5131(BaseEffect): + """ + shipMissileRofCC + + Used by: + Ships named like: Caracal (2 of 2) + Ship: Enforcer + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + groups = ('Missile Launcher Heavy', 'Missile Launcher Rapid Light', 'Missile Launcher Heavy Assault') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'speed', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect5132(BaseEffect): + """ + shipPTurretFalloffBonusMC2 + + Used by: + Ship: Enforcer + Ship: Stabber + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect5133(BaseEffect): + """ + shipHTDamageBonusCC + + Used by: + Ship: Moa + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect5136(BaseEffect): + """ + shipMETCDamageBonusAC + + Used by: + Ship: Augoror Navy Issue + Ship: Enforcer + Ship: Maller + Ship: Omen Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect5139(BaseEffect): + """ + shipMiningBonusOREfrig1 + + Used by: + Variations of ship: Venture (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'miningAmount', module.getModifiedItemAttr('shipBonusOREfrig1'), + skill='Mining Frigate') + + +class Effect5142(BaseEffect): + """ + GCHYieldMultiplyPassive + + Used by: + Ship: Prospect + Ship: Venture + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Gas Cloud Harvester', + 'miningAmount', module.getModifiedItemAttr('miningAmountMultiplier')) + + +class Effect5153(BaseEffect): + """ + shipMissileVelocityPirateFactionRocket + + Used by: + Ship: Corax + Ship: Talwar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5156(BaseEffect): + """ + shipGCHYieldBonusOREfrig2 + + Used by: + Ship: Prospect + Ship: Venture + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Gas Cloud Harvester', + 'duration', module.getModifiedItemAttr('shipBonusOREfrig2'), skill='Mining Frigate') + + +class Effect5162(BaseEffect): + """ + skillReactiveArmorHardenerCapNeedBonus + + Used by: + Skill: Resistance Phasing + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Resistance Shift Hardener', 'capacitorNeed', + src.getModifiedItemAttr('capNeedBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Resistance Phasing'), 'capacitorNeed', + src.getModifiedItemAttr('capNeedBonus') * lvl) + + +class Effect5165(BaseEffect): + """ + shipBonusDroneMWDboostrole + + Used by: + Ship: Algos + Ship: Dragoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5168(BaseEffect): + """ + droneSalvageBonus + + Used by: + Skill: Salvage Drone Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.drones.filteredItemIncrease(lambda drone: drone.item.requiresSkill('Salvage Drone Operation'), + 'accessDifficultyBonus', + container.getModifiedItemAttr('accessDifficultyBonus') * container.level) + + +class Effect5180(BaseEffect): + """ + sensorCompensationSensorStrengthBonusGravimetric + + Used by: + Skill: Gravimetric Sensor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.ship.boostItemAttr('scanGravimetricStrength', + container.getModifiedItemAttr('sensorStrengthBonus') * container.level) + + +class Effect5181(BaseEffect): + """ + sensorCompensationSensorStrengthBonusLadar + + Used by: + Skill: Ladar Sensor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.ship.boostItemAttr('scanLadarStrength', container.getModifiedItemAttr('sensorStrengthBonus') * container.level) + + +class Effect5182(BaseEffect): + """ + sensorCompensationSensorStrengthBonusMagnetometric + + Used by: + Skill: Magnetometric Sensor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.ship.boostItemAttr('scanMagnetometricStrength', + container.getModifiedItemAttr('sensorStrengthBonus') * container.level) + + +class Effect5183(BaseEffect): + """ + sensorCompensationSensorStrengthBonusRadar + + Used by: + Skill: Radar Sensor Compensation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.ship.boostItemAttr('scanRadarStrength', container.getModifiedItemAttr('sensorStrengthBonus') * container.level) + + +class Effect5185(BaseEffect): + """ + shipEnergyVampireAmountBonusFixedAF2 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', ship.getModifiedItemAttr('shipBonus2AF'), + skill='Amarr Frigate') + + +class Effect5187(BaseEffect): + """ + shipBonusEwRemoteSensorDampenerFalloffBonusGC1 + + Used by: + Ship: Celestis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Sensor Dampener', + 'falloffEffectiveness', ship.getModifiedItemAttr('shipBonusGC'), + skill='Gallente Cruiser') + + +class Effect5188(BaseEffect): + """ + trackingSpeedBonusEffectHybrids + + Used by: + Modules named like: Hybrid Metastasis Adjuster (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Hybrid Weapon', + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True) + + +class Effect5189(BaseEffect): + """ + trackingSpeedBonusEffectLasers + + Used by: + Modules named like: Energy Metastasis Adjuster (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Weapon', + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True) + + +class Effect5190(BaseEffect): + """ + trackingSpeedBonusEffectProjectiles + + Used by: + Modules named like: Projectile Metastasis Adjuster (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Projectile Weapon', + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True) + + +class Effect5201(BaseEffect): + """ + armorUpgradesMassPenaltyReductionBonus + + Used by: + Skill: Armor Layering + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Armor Reinforcer', + 'massAddition', container.getModifiedItemAttr('massPenaltyReduction') * level) + + +class Effect5205(BaseEffect): + """ + shipSETTrackingBonusRookie + + Used by: + Ship: Immolator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('rookieSETTracking')) + + +class Effect5206(BaseEffect): + """ + shipSETOptimalBonusRookie + + Used by: + Ship: Immolator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('rookieSETOptimal')) + + +class Effect5207(BaseEffect): + """ + shipNOSTransferAmountBonusRookie + + Used by: + Ship: Hematos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', ship.getModifiedItemAttr('rookieNosDrain')) + + +class Effect5208(BaseEffect): + """ + shipNeutDestabilizationAmountBonusRookie + + Used by: + Ship: Hematos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', ship.getModifiedItemAttr('rookieNeutDrain')) + + +class Effect5209(BaseEffect): + """ + shipWebVelocityBonusRookie + + Used by: + Ship: Hematos + Ship: Violator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'speedFactor', ship.getModifiedItemAttr('rookieWebAmount')) + + +class Effect5212(BaseEffect): + """ + shipDroneMWDSpeedBonusRookie + + Used by: + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda mod: True, + 'maxVelocity', ship.getModifiedItemAttr('rookieDroneMWDspeed')) + + +class Effect5213(BaseEffect): + """ + shipRocketMaxVelocityBonusRookie + + Used by: + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'maxVelocity', ship.getModifiedItemAttr('rookieRocketVelocity')) + + +class Effect5214(BaseEffect): + """ + shipLightMissileMaxVelocityBonusRookie + + Used by: + Ship: Taipan + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('rookieLightMissileVelocity')) + + +class Effect5215(BaseEffect): + """ + shipSHTTrackingSpeedBonusRookie + + Used by: + Ship: Violator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('rookieSHTTracking')) + + +class Effect5216(BaseEffect): + """ + shipSHTFalloffBonusRookie + + Used by: + Ship: Violator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('rookieSHTFalloff')) + + +class Effect5217(BaseEffect): + """ + shipSPTTrackingSpeedBonusRookie + + Used by: + Ship: Echo + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('rookieSPTTracking')) + + +class Effect5218(BaseEffect): + """ + shipSPTFalloffBonusRookie + + Used by: + Ship: Echo + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('rookieSPTFalloff')) + + +class Effect5219(BaseEffect): + """ + shipSPTOptimalRangeBonusRookie + + Used by: + Ship: Echo + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('rookieSPTOptimal')) + + +class Effect5220(BaseEffect): + """ + shipProjectileDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5221(BaseEffect): + """ + shipHeavyAssaultMissileEMDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'emDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5222(BaseEffect): + """ + shipHeavyAssaultMissileKinDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5223(BaseEffect): + """ + shipHeavyAssaultMissileThermDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5224(BaseEffect): + """ + shipHeavyAssaultMissileExpDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5225(BaseEffect): + """ + shipHeavyMissileEMDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'emDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5226(BaseEffect): + """ + shipHeavyMissileExpDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5227(BaseEffect): + """ + shipHeavyMissileKinDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5228(BaseEffect): + """ + shipHeavyMissileThermDmgPirateCruiser + + Used by: + Ship: Gnosis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5229(BaseEffect): + """ + shipScanProbeStrengthBonusPirateCruiser + + Used by: + Ships named like: Stratios (2 of 2) + Ship: Astero + Ship: Gnosis + Ship: Praxis + Ship: Sunesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseSensorStrength', container.getModifiedItemAttr('shipBonusRole8')) + + +class Effect5230(BaseEffect): + """ + modifyActiveShieldResonancePostPercent + + Used by: + Modules from group: Flex Shield Hardener (5 of 5) + Modules from group: Shield Hardener (97 of 97) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + for damageType in ('kinetic', 'thermal', 'explosive', 'em'): + fit.ship.boostItemAttr('shield' + damageType.capitalize() + 'DamageResonance', + module.getModifiedItemAttr(damageType + 'DamageResistanceBonus'), + stackingPenalties=True) + + +class Effect5231(BaseEffect): + """ + modifyActiveArmorResonancePostPercent + + Used by: + Modules from group: Armor Hardener (156 of 156) + Modules from group: Flex Armor Hardener (4 of 4) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + for damageType in ('kinetic', 'thermal', 'explosive', 'em'): + fit.ship.boostItemAttr('armor%sDamageResonance' % damageType.capitalize(), + module.getModifiedItemAttr('%sDamageResistanceBonus' % damageType), + stackingPenalties=True) + + +class Effect5234(BaseEffect): + """ + shipSmallMissileExpDmgCF2 + + Used by: + Ship: Caldari Navy Hookbill + Ship: Kestrel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5237(BaseEffect): + """ + shipSmallMissileKinDmgCF2 + + Used by: + Ship: Kestrel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5240(BaseEffect): + """ + shipSmallMissileThermDmgCF2 + + Used by: + Ship: Caldari Navy Hookbill + Ship: Kestrel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5243(BaseEffect): + """ + shipSmallMissileEMDmgCF2 + + Used by: + Ship: Caldari Navy Hookbill + Ship: Kestrel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + 'emDamage', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5259(BaseEffect): + """ + reconShipCloakCpuBonus1 + + Used by: + Ships from group: Force Recon Ship (7 of 9) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Cloaking Device', + 'cpu', ship.getModifiedItemAttr('eliteBonusReconShip1'), skill='Recon Ships') + + +class Effect5260(BaseEffect): + """ + covertOpsCloakCpuPercentBonus1 + + Used by: + Ships from group: Covert Ops (6 of 8) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Cloaking'), + 'cpu', ship.getModifiedItemAttr('eliteBonusCovertOps1'), skill='Covert Ops') + + +class Effect5261(BaseEffect): + """ + CovertCloakCPUAddition + + Used by: + Modules named like: Covert Ops Cloaking Device II (2 of 2) + Module: Covert Cynosural Field Generator I + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.increaseItemAttr('cpu', module.getModifiedItemAttr('covertCloakCPUAdd') or 0) + + +class Effect5262(BaseEffect): + """ + covertOpsCloakCpuPenalty + + Used by: + Subsystems from group: Defensive Systems (8 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Cloaking'), + 'covertCloakCPUAdd', module.getModifiedItemAttr('covertCloakCPUPenalty')) + + +class Effect5263(BaseEffect): + """ + covertCynoCpuPenalty + + Used by: + Subsystems from group: Defensive Systems (8 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Cynosural Field Theory'), + 'covertCloakCPUAdd', module.getModifiedItemAttr('covertCloakCPUPenalty')) + + +class Effect5264(BaseEffect): + """ + warfareLinkCPUAddition + + Used by: + Modules from group: Command Burst (10 of 10) + Modules from group: Gang Coordinator (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.increaseItemAttr('cpu', module.getModifiedItemAttr('warfareLinkCPUAdd') or 0) + + +class Effect5265(BaseEffect): + """ + warfareLinkCpuPenalty + + Used by: + Subsystems from group: Offensive Systems (8 of 12) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), + 'warfareLinkCPUAdd', module.getModifiedItemAttr('warfareLinkCPUPenalty')) + + +class Effect5266(BaseEffect): + """ + blockadeRunnerCloakCpuPercentBonus + + Used by: + Ships from group: Blockade Runner (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Cloaking Device', + 'cpu', ship.getModifiedItemAttr('eliteIndustrialCovertCloakBonus'), + skill='Transport Ships') + + +class Effect5267(BaseEffect): + """ + drawbackRepairSystemsPGNeed + + Used by: + Modules named like: Auxiliary Nano Pump (6 of 8) + Modules named like: Nanobot Accelerator (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'power', module.getModifiedItemAttr('drawback')) + + +class Effect5268(BaseEffect): + """ + drawbackCapRepPGNeed + + Used by: + Variations of module: Capital Auxiliary Nano Pump I (2 of 2) + Variations of module: Capital Nanobot Accelerator I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), + 'power', module.getModifiedItemAttr('drawback')) + + +class Effect5275(BaseEffect): + """ + fueledArmorRepair + + Used by: + Modules from group: Ancillary Armor Repairer (7 of 7) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + if module.charge and module.charge.name == 'Nanite Repair Paste': + multiplier = 3 + else: + multiplier = 1 + + amount = module.getModifiedItemAttr('armorDamageAmount') * multiplier + speed = module.getModifiedItemAttr('duration') / 1000.0 + rps = amount / speed + fit.extraAttributes.increase('armorRepair', rps) + fit.extraAttributes.increase('armorRepairPreSpool', rps) + fit.extraAttributes.increase('armorRepairFullSpool', rps) + + +class Effect5293(BaseEffect): + """ + shipLaserCapNeed2AD1 + + Used by: + Ship: Coercer + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + + +class Effect5294(BaseEffect): + """ + shipLaserTracking2AD2 + + Used by: + Ship: Coercer + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusAD2'), skill='Amarr Destroyer') + + +class Effect5295(BaseEffect): + """ + shipBonusDroneDamageMultiplierAD1 + + Used by: + Variations of ship: Dragoon (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + + +class Effect5300(BaseEffect): + """ + shipBonusDroneHitpointsAD1 + + Used by: + Variations of ship: Dragoon (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'shieldCapacity', + src.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'hp', + src.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'armorHP', + src.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + + +class Effect5303(BaseEffect): + """ + shipHybridRange1CD1 + + Used by: + Ship: Cormorant + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusCD1'), skill='Caldari Destroyer') + + +class Effect5304(BaseEffect): + """ + shipHybridTrackingCD2 + + Used by: + Ship: Cormorant + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusCD2'), skill='Caldari Destroyer') + + +class Effect5305(BaseEffect): + """ + shipBonusFrigateSizedMissileKineticDamageCD1 + + Used by: + Ship: Corax + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCD1'), + skill='Caldari Destroyer') + + +class Effect5306(BaseEffect): + """ + shipRocketKineticDmgCD1 + + Used by: + Ship: Corax + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCD1'), + skill='Caldari Destroyer') + + +class Effect5307(BaseEffect): + """ + shipBonusAoeVelocityRocketsCD2 + + Used by: + Ship: Corax + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusCD2'), skill='Caldari Destroyer') + + +class Effect5308(BaseEffect): + """ + shipBonusAoeVelocityStandardMissilesCD2 + + Used by: + Ship: Corax + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusCD2'), skill='Caldari Destroyer') + + +class Effect5309(BaseEffect): + """ + shipHybridFallOff1GD1 + + Used by: + Ship: Catalyst + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusGD1'), skill='Gallente Destroyer') + + +class Effect5310(BaseEffect): + """ + shipHybridTracking1GD2 + + Used by: + Variations of ship: Catalyst (2 of 2) + Ship: Algos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGD2'), skill='Gallente Destroyer') + + +class Effect5311(BaseEffect): + """ + shipBonusDroneDamageMultiplierGD1 + + Used by: + Variations of ship: Algos (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusGD1'), skill='Gallente Destroyer') + + +class Effect5316(BaseEffect): + """ + shipBonusDroneHitpointsGD1 + + Used by: + Variations of ship: Algos (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'shieldCapacity', + src.getModifiedItemAttr('shipBonusGD1'), skill='Gallente Destroyer') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'armorHP', + src.getModifiedItemAttr('shipBonusGD1'), skill='Gallente Destroyer') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'hp', + src.getModifiedItemAttr('shipBonusGD1'), skill='Gallente Destroyer') + + +class Effect5317(BaseEffect): + """ + shipProjectileDamageMD1 + + Used by: + Variations of ship: Thrasher (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMD1'), + skill='Minmatar Destroyer') + + +class Effect5318(BaseEffect): + """ + shipProjectileTracking1MD2 + + Used by: + Variations of ship: Thrasher (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusMD2'), skill='Minmatar Destroyer') + + +class Effect5319(BaseEffect): + """ + shipBonusFrigateSizedLightMissileExplosiveDamageMD1 + + Used by: + Ship: Talwar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusMD1'), + skill='Minmatar Destroyer') + + +class Effect5320(BaseEffect): + """ + shipRocketExplosiveDmgMD1 + + Used by: + Ship: Talwar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusMD1'), + skill='Minmatar Destroyer') + + +class Effect5321(BaseEffect): + """ + shipBonusMWDSignatureRadiusMD2 + + Used by: + Ship: Talwar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', ship.getModifiedItemAttr('shipBonusMD2'), + skill='Minmatar Destroyer') + + +class Effect5322(BaseEffect): + """ + shipArmorEMResistance1ABC1 + + Used by: + Variations of ship: Prophecy (2 of 2) + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5323(BaseEffect): + """ + shipArmorExplosiveResistance1ABC1 + + Used by: + Variations of ship: Prophecy (2 of 2) + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5324(BaseEffect): + """ + shipArmorKineticResistance1ABC1 + + Used by: + Variations of ship: Prophecy (2 of 2) + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5325(BaseEffect): + """ + shipArmorThermResistance1ABC1 + + Used by: + Variations of ship: Prophecy (2 of 2) + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5326(BaseEffect): + """ + shipBonusDroneDamageMultiplierABC2 + + Used by: + Ship: Prophecy + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusABC2'), + skill='Amarr Battlecruiser') + + +class Effect5331(BaseEffect): + """ + shipBonusDroneHitpointsABC2 + + Used by: + Ship: Prophecy + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for layer in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + layer, ship.getModifiedItemAttr('shipBonusABC2'), skill='Amarr Battlecruiser') + + +class Effect5332(BaseEffect): + """ + shipLaserCapABC1 + + Used by: + Ship: Harbinger + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5333(BaseEffect): + """ + shipLaserDamageBonusABC2 + + Used by: + Ships named like: Harbinger (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusABC2'), + skill='Amarr Battlecruiser') + + +class Effect5334(BaseEffect): + """ + shipHybridOptimal1CBC1 + + Used by: + Variations of ship: Ferox (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusCBC1'), skill='Caldari Battlecruiser') + + +class Effect5335(BaseEffect): + """ + shipShieldEmResistance1CBC2 + + Used by: + Ship: Drake + Ship: Nighthawk + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', ship.getModifiedItemAttr('shipBonusCBC2'), + skill='Caldari Battlecruiser') + + +class Effect5336(BaseEffect): + """ + shipShieldExplosiveResistance1CBC2 + + Used by: + Ship: Drake + Ship: Nighthawk + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusCBC2'), + skill='Caldari Battlecruiser') + + +class Effect5337(BaseEffect): + """ + shipShieldKineticResistance1CBC2 + + Used by: + Ship: Drake + Ship: Nighthawk + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', ship.getModifiedItemAttr('shipBonusCBC2'), + skill='Caldari Battlecruiser') + + +class Effect5338(BaseEffect): + """ + shipShieldThermalResistance1CBC2 + + Used by: + Ship: Drake + Ship: Nighthawk + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', ship.getModifiedItemAttr('shipBonusCBC2'), + skill='Caldari Battlecruiser') + + +class Effect5339(BaseEffect): + """ + shipBonusHeavyAssaultMissileKineticDamageCBC1 + + Used by: + Ship: Drake + Ship: Nighthawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCBC1'), + skill='Caldari Battlecruiser') + + +class Effect5340(BaseEffect): + """ + shipBonusHeavyMissileKineticDamageCBC1 + + Used by: + Ship: Drake + Ship: Nighthawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCBC1'), + skill='Caldari Battlecruiser') + + +class Effect5341(BaseEffect): + """ + shipHybridDmg1GBC1 + + Used by: + Variations of ship: Brutix (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGBC1'), + skill='Gallente Battlecruiser') + + +class Effect5342(BaseEffect): + """ + shipArmorRepairing1GBC2 + + Used by: + Variations of ship: Myrmidon (2 of 2) + Ship: Astarte + Ship: Brutix + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusGBC2'), + skill='Gallente Battlecruiser') + + +class Effect5343(BaseEffect): + """ + shipBonusDroneDamageMultiplierGBC1 + + Used by: + Variations of ship: Myrmidon (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGBC1'), + skill='Gallente Battlecruiser') + + +class Effect5348(BaseEffect): + """ + shipBonusDroneHitpointsGBC1 + + Used by: + Variations of ship: Myrmidon (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for layer in ('shieldCapacity', 'armorHP', 'hp'): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + layer, ship.getModifiedItemAttr('shipBonusGBC1'), skill='Gallente Battlecruiser') + + +class Effect5349(BaseEffect): + """ + shipBonusHeavyMissileLauncherRofMBC2 + + Used by: + Variations of ship: Cyclone (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy', + 'speed', ship.getModifiedItemAttr('shipBonusMBC2'), skill='Minmatar Battlecruiser') + + +class Effect5350(BaseEffect): + """ + shipBonusHeavyAssaultMissileLauncherRofMBC2 + + Used by: + Variations of ship: Cyclone (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy Assault', + 'speed', ship.getModifiedItemAttr('shipBonusMBC2'), skill='Minmatar Battlecruiser') + + +class Effect5351(BaseEffect): + """ + shipShieldBoost1MBC1 + + Used by: + Variations of ship: Cyclone (2 of 2) + Ship: Sleipnir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMBC1'), + skill='Minmatar Battlecruiser') + + +class Effect5352(BaseEffect): + """ + shipBonusProjectileDamageMBC1 + + Used by: + Ships named like: Hurricane (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMBC1'), + skill='Minmatar Battlecruiser') + + +class Effect5353(BaseEffect): + """ + shipProjectileRof1MBC2 + + Used by: + Ship: Hurricane + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusMBC2'), skill='Minmatar Battlecruiser') + + +class Effect5354(BaseEffect): + """ + shipLargeLaserCapABC1 + + Used by: + Ship: Oracle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5355(BaseEffect): + """ + shipLargeLaserDamageBonusABC2 + + Used by: + Ship: Oracle + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusABC2'), + skill='Amarr Battlecruiser') + + +class Effect5356(BaseEffect): + """ + shipHybridRangeBonusCBC1 + + Used by: + Ship: Naga + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusCBC1'), skill='Caldari Battlecruiser') + + +class Effect5357(BaseEffect): + """ + shipHybridDamageBonusCBC2 + + Used by: + Ship: Naga + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusCBC2'), + skill='Caldari Battlecruiser') + + +class Effect5358(BaseEffect): + """ + shipLargeHybridTrackingBonusGBC1 + + Used by: + Ship: Talos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGBC1'), + skill='Gallente Battlecruiser') + + +class Effect5359(BaseEffect): + """ + shipHybridDamageBonusGBC2 + + Used by: + Ship: Talos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGBC2'), + skill='Gallente Battlecruiser') + + +class Effect5360(BaseEffect): + """ + shipProjectileRofBonusMBC1 + + Used by: + Ship: Tornado + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusMBC1'), skill='Minmatar Battlecruiser') + + +class Effect5361(BaseEffect): + """ + shipProjectileFalloffBonusMBC2 + + Used by: + Ship: Tornado + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusMBC2'), skill='Minmatar Battlecruiser') + + +class Effect5364(BaseEffect): + """ + armorAllRepairSystemsAmountBonusPassive + + Used by: + Implants named like: Agency 'Hardshell' TB Dose (4 of 4) + Implants named like: Exile Booster (4 of 4) + Implant: Antipharmakon Kosybo + """ + + type = 'passive' + + @staticmethod + def handler(fit, booster, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Repair Systems') or mod.item.requiresSkill('Capital Repair Systems'), + 'armorDamageAmount', booster.getModifiedItemAttr('armorDamageAmountBonus') or 0) + + +class Effect5365(BaseEffect): + """ + eliteBonusViolatorsRepairSystemsArmorDamageAmount2 + + Used by: + Ship: Kronos + Ship: Paladin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('eliteBonusViolators2'), + skill='Marauders') + + +class Effect5366(BaseEffect): + """ + shipBonusRepairSystemsBonusATC2 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusATC2')) + + +class Effect5367(BaseEffect): + """ + shipBonusRepairSystemsArmorRepairAmountGB2 + + Used by: + Ship: Hyperion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusGB2'), + skill='Gallente Battleship') + + +class Effect5378(BaseEffect): + """ + shipHeavyMissileAOECloudSizeCBC1 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCBC1'), + skill='Caldari Battlecruiser') + + +class Effect5379(BaseEffect): + """ + shipHeavyAssaultMissileAOECloudSizeCBC1 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCBC1'), + skill='Caldari Battlecruiser') + + +class Effect5380(BaseEffect): + """ + shipHybridTrackingGBC2 + + Used by: + Ship: Brutix Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGBC2'), + skill='Gallente Battlecruiser') + + +class Effect5381(BaseEffect): + """ + shipEnergyTrackingABC1 + + Used by: + Ship: Harbinger Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusABC1'), + skill='Amarr Battlecruiser') + + +class Effect5382(BaseEffect): + """ + shipBonusMETOptimalAC2 + + Used by: + Ship: Enforcer + Ship: Omen Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect5383(BaseEffect): + """ + shipMissileEMDamageCC + + Used by: + Ship: Orthrus + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'emDamage', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect5384(BaseEffect): + """ + shipMissileThermDamageCC + + Used by: + Ship: Orthrus + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect5385(BaseEffect): + """ + shipMissileExpDamageCC + + Used by: + Ship: Orthrus + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect5386(BaseEffect): + """ + shipMissileKinDamageCC2 + + Used by: + Ship: Rook + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect5387(BaseEffect): + """ + shipHeavyAssaultMissileAOECloudSizeCC2 + + Used by: + Ship: Caracal Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect5388(BaseEffect): + """ + shipHeavyMissileAOECloudSizeCC2 + + Used by: + Ship: Caracal Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect5389(BaseEffect): + """ + shipBonusDroneTrackingGC + + Used by: + Ship: Vexor Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect5390(BaseEffect): + """ + shipBonusDroneMWDboostGC + + Used by: + Ship: Vexor Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect5397(BaseEffect): + """ + baseMaxScanDeviationModifierModuleOnline2None + + Used by: + Variations of module: Scan Pinpointing Array I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseMaxScanDeviation', + module.getModifiedItemAttr('maxScanDeviationModifierModule'), + stackingPenalties=True) + + +class Effect5398(BaseEffect): + """ + systemScanDurationModuleModifier + + Used by: + Modules from group: Scanning Upgrade Time (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Astrometrics'), + 'duration', module.getModifiedItemAttr('scanDurationBonus')) + + +class Effect5399(BaseEffect): + """ + baseSensorStrengthModifierModule + + Used by: + Variations of module: Scan Rangefinding Array I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseSensorStrength', module.getModifiedItemAttr('scanStrengthBonusModule'), + stackingPenalties=True) + + +class Effect5402(BaseEffect): + """ + shipMissileHeavyAssaultVelocityABC2 + + Used by: + Ship: Damnation + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusABC2'), + skill='Amarr Battlecruiser') + + +class Effect5403(BaseEffect): + """ + shipMissileHeavyVelocityABC2 + + Used by: + Ship: Damnation + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusABC2'), + skill='Amarr Battlecruiser') + + +class Effect5410(BaseEffect): + """ + shipLaserCap1ABC2 + + Used by: + Ship: Absolution + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusABC2'), + skill='Amarr Battlecruiser') + + +class Effect5411(BaseEffect): + """ + shipMissileVelocityCD1 + + Used by: + Ship: Flycatcher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCD1'), skill='Caldari Destroyer') + + +class Effect5417(BaseEffect): + """ + shipBonusDroneDamageMultiplierAB + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect5418(BaseEffect): + """ + shipBonusDroneArmorHitPointsAB + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'armorHP', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect5419(BaseEffect): + """ + shipBonusDroneShieldHitPointsAB + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect5420(BaseEffect): + """ + shipBonusDroneStructureHitPointsAB + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'hp', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect5424(BaseEffect): + """ + shipLargeHybridTurretRofGB + + Used by: + Ship: Megathron + Ship: Megathron Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusGB'), skill='Gallente Battleship') + + +class Effect5427(BaseEffect): + """ + shipBonusDroneTrackingGB + + Used by: + Ship: Dominix + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGB'), skill='Gallente Battleship') + + +class Effect5428(BaseEffect): + """ + shipBonusDroneOptimalRangeGB + + Used by: + Ship: Dominix + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxRange', ship.getModifiedItemAttr('shipBonusGB'), skill='Gallente Battleship') + + +class Effect5429(BaseEffect): + """ + shipBonusMissileAoeVelocityMB2 + + Used by: + Ship: Typhoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusMB2'), + skill='Minmatar Battleship') + + +class Effect5430(BaseEffect): + """ + shipBonusAoeVelocityCruiseMissilesMB2 + + Used by: + Ship: Typhoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'aoeVelocity', ship.getModifiedItemAttr('shipBonusMB2'), + skill='Minmatar Battleship') + + +class Effect5431(BaseEffect): + """ + shipBonusLargeEnergyTurretTrackingAB + + Used by: + Ship: Apocalypse + Ship: Apocalypse Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect5433(BaseEffect): + """ + hackingSkillVirusBonus + + Used by: + Modules named like: Memetic Algorithm Bank (8 of 8) + Implant: Neural Lace 'Blackglass' Net Intrusion 920-40 + Implant: Poteque 'Prospector' Environmental Analysis EY-1005 + Implant: Poteque 'Prospector' Hacking HC-905 + Skill: Hacking + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Hacking'), + 'virusCoherence', container.getModifiedItemAttr('virusCoherenceBonus') * level) + + +class Effect5437(BaseEffect): + """ + archaeologySkillVirusBonus + + Used by: + Modules named like: Emission Scope Sharpener (8 of 8) + Implant: Poteque 'Prospector' Archaeology AC-905 + Implant: Poteque 'Prospector' Environmental Analysis EY-1005 + Skill: Archaeology + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Archaeology'), + 'virusCoherence', container.getModifiedItemAttr('virusCoherenceBonus') * level) + + +class Effect5440(BaseEffect): + """ + systemStandardMissileKineticDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'kineticDamage', beacon.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5444(BaseEffect): + """ + shipTorpedoAOECloudSize1CB + + Used by: + Ship: Raven Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect5445(BaseEffect): + """ + shipCruiseMissileAOECloudSize1CB + + Used by: + Ship: Raven Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect5456(BaseEffect): + """ + shipCruiseMissileROFCB + + Used by: + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Cruise', + 'speed', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect5457(BaseEffect): + """ + shipTorpedoROFCB + + Used by: + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', + 'speed', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect5459(BaseEffect): + """ + hackingVirusStrengthBonus + + Used by: + Implant: Neural Lace 'Blackglass' Net Intrusion 920-40 + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Hacking'), 'virusStrength', src.getModifiedItemAttr('virusStrengthBonus')) + + +class Effect5460(BaseEffect): + """ + minigameVirusStrengthBonus + + Used by: + Ships from group: Covert Ops (7 of 8) + Ships named like: Stratios (2 of 2) + Subsystems named like: Defensive Covert Reconfiguration (4 of 4) + Ship: Astero + Ship: Heron + Ship: Imicus + Ship: Magnate + Ship: Nestor + Ship: Probe + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemIncrease( + lambda mod: (mod.item.requiresSkill('Hacking') or mod.item.requiresSkill('Archaeology')), + 'virusStrength', container.getModifiedItemAttr('virusStrengthBonus') * level) + + +class Effect5461(BaseEffect): + """ + shieldOperationRechargeratebonusPostPercentOnline + + Used by: + Modules from group: Shield Power Relay (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('shieldRechargeRate', module.getModifiedItemAttr('rechargeratebonus') or 0) + + +class Effect5468(BaseEffect): + """ + shipBonusAgilityCI2 + + Used by: + Ship: Badger + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('shipBonusCI2'), skill='Caldari Industrial') + + +class Effect5469(BaseEffect): + """ + shipBonusAgilityMI2 + + Used by: + Ship: Wreathe + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('shipBonusMI2'), skill='Minmatar Industrial') + + +class Effect5470(BaseEffect): + """ + shipBonusAgilityGI2 + + Used by: + Ship: Nereus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('shipBonusGI2'), skill='Gallente Industrial') + + +class Effect5471(BaseEffect): + """ + shipBonusAgilityAI2 + + Used by: + Ship: Sigil + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('shipBonusAI2'), skill='Amarr Industrial') + + +class Effect5476(BaseEffect): + """ + shipBonusOreCapacityGI2 + + Used by: + Ship: Miasmos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('specialOreHoldCapacity', ship.getModifiedItemAttr('shipBonusGI2'), + skill='Gallente Industrial') + + +class Effect5477(BaseEffect): + """ + shipBonusAmmoBayMI2 + + Used by: + Ship: Hoarder + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('specialAmmoHoldCapacity', ship.getModifiedItemAttr('shipBonusMI2'), + skill='Minmatar Industrial') + + +class Effect5478(BaseEffect): + """ + shipBonusPICommoditiesHoldGI2 + + Used by: + Ship: Epithal + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('specialPlanetaryCommoditiesHoldCapacity', ship.getModifiedItemAttr('shipBonusGI2'), + skill='Gallente Industrial') + + +class Effect5479(BaseEffect): + """ + shipBonusMineralBayGI2 + + Used by: + Ship: Kryos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('specialMineralHoldCapacity', ship.getModifiedItemAttr('shipBonusGI2'), + skill='Gallente Industrial') + + +class Effect5480(BaseEffect): + """ + setBonusChristmasBonusVelocity + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'implantBonusVelocity', implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect5482(BaseEffect): + """ + setBonusChristmasAgilityBonus + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'agilityBonus', implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect5483(BaseEffect): + """ + setBonusChristmasShieldCapacityBonus + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'shieldCapacityBonus', implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect5484(BaseEffect): + """ + setBonusChristmasArmorHPBonus2 + + Used by: + Implants named like: Genolution Core Augmentation CA (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Special Edition Implant', + 'armorHpBonus2', implant.getModifiedItemAttr('implantSetChristmas')) + + +class Effect5485(BaseEffect): + """ + shipSPTOptimalBonusMF + + Used by: + Ship: Chremoas + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect5486(BaseEffect): + """ + shipBonusProjectileDamageMBC2 + + Used by: + Ship: Sleipnir + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusMBC2'), + skill='Minmatar Battlecruiser') + + +class Effect5496(BaseEffect): + """ + eliteBonusCommandShipHAMRoFCS1 + + Used by: + Ship: Claymore + Ship: Nighthawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy Assault', + 'speed', ship.getModifiedItemAttr('eliteBonusCommandShips1'), skill='Command Ships') + + +class Effect5497(BaseEffect): + """ + eliteBonusCommandShipHMRoFCS1 + + Used by: + Ship: Claymore + Ship: Nighthawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Heavy', + 'speed', ship.getModifiedItemAttr('eliteBonusCommandShips1'), skill='Command Ships') + + +class Effect5498(BaseEffect): + """ + eliteBonusCommandShipsHeavyAssaultMissileExplosionVelocityCS2 + + Used by: + Ship: Claymore + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'aoeVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect5499(BaseEffect): + """ + eliteBonusCommandShipsHeavyAssaultMissileExplosionRadiusCS2 + + Used by: + Ship: Nighthawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect5500(BaseEffect): + """ + eliteBonusCommandShipsHeavyMissileExplosionRadiusCS2 + + Used by: + Ship: Nighthawk + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect5501(BaseEffect): + """ + eliteBonusCommandShipMediumHybridDamageCS2 + + Used by: + Ship: Vulture + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect5502(BaseEffect): + """ + eliteBonusCommandShipMediumHybridTrackingCS1 + + Used by: + Ship: Eos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusCommandShips1'), + skill='Command Ships') + + +class Effect5503(BaseEffect): + """ + eliteBonusCommandShipHeavyDroneTrackingCS2 + + Used by: + Ship: Eos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect5504(BaseEffect): + """ + eliteBonusCommandShipHeavyDroneVelocityCS2 + + Used by: + Ship: Eos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusCommandShips2'), + skill='Command Ships') + + +class Effect5505(BaseEffect): + """ + eliteBonusCommandShipMediumHybridRoFCS1 + + Used by: + Ship: Astarte + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'speed', ship.getModifiedItemAttr('eliteBonusCommandShips1'), skill='Command Ships') + + +class Effect5514(BaseEffect): + """ + eliteBonusCommandShipHeavyAssaultMissileDamageCS2 + + Used by: + Ship: Damnation + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('em', 'explosive', 'kinetic', 'thermal') + for damageType in damageTypes: + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + '{0}Damage'.format(damageType), + ship.getModifiedItemAttr('eliteBonusCommandShips2'), skill='Command Ships') + + +class Effect5521(BaseEffect): + """ + eliteBonusCommandShipHeavyMissileDamageCS2 + + Used by: + Ship: Damnation + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('em', 'explosive', 'kinetic', 'thermal') + for damageType in damageTypes: + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + '{0}Damage'.format(damageType), + ship.getModifiedItemAttr('eliteBonusCommandShips2'), skill='Command Ships') + + +class Effect5539(BaseEffect): + """ + shipBonusHMLKineticDamageAC + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect5540(BaseEffect): + """ + shipBonusHMLEMDamageAC + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'emDamage', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect5541(BaseEffect): + """ + shipBonusHMLThermDamageAC + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect5542(BaseEffect): + """ + shipBonusHMLExploDamageAC + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect5552(BaseEffect): + """ + shipBonusHMLVelocityEliteBonusHeavyGunship1 + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect5553(BaseEffect): + """ + shipBonusHAMVelocityEliteBonusHeavyGunship1 + + Used by: + Ship: Sacrilege + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', ship.getModifiedItemAttr('eliteBonusHeavyGunship1'), + skill='Heavy Assault Cruisers') + + +class Effect5554(BaseEffect): + """ + shipBonusArmorRepAmountGC2 + + Used by: + Ship: Deimos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusGC2'), + skill='Gallente Cruiser') + + +class Effect5555(BaseEffect): + """ + shipBonusHeavyDroneSpeedGC + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect5556(BaseEffect): + """ + shipBonusHeavyDRoneTrackingGC + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect5557(BaseEffect): + """ + shipBonusSentryDroneOptimalRangeEliteBonusHeavyGunship2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect5558(BaseEffect): + """ + shipBonusSentryDroneTrackingEliteBonusHeavyGunship2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'trackingSpeed', ship.getModifiedItemAttr('eliteBonusHeavyGunship2'), + skill='Heavy Assault Cruisers') + + +class Effect5559(BaseEffect): + """ + shipBonusShieldBoostAmountMC2 + + Used by: + Ship: Vagabond + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect5560(BaseEffect): + """ + roleBonusMarauderMJDRReactivationDelayBonus + + Used by: + Ships from group: Marauder (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Micro Jump Drive', + 'moduleReactivationDelay', ship.getModifiedItemAttr('roleBonusMarauder')) + + +class Effect5564(BaseEffect): + """ + subSystemBonusCaldariOffensiveCommandBursts + + Used by: + Subsystem: Tengu Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusCaldariOffensive'), skill='Caldari Offensive Systems') + + +class Effect5568(BaseEffect): + """ + subSystemBonusGallenteOffensiveCommandBursts + + Used by: + Subsystem: Proteus Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusGallenteOffensive'), skill='Gallente Offensive Systems') + + +class Effect5570(BaseEffect): + """ + subSystemBonusMinmatarOffensiveCommandBursts + + Used by: + Subsystem: Loki Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), + 'war' + 'fareBuff1Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'buffDuration', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), skill='Minmatar Offensive Systems') + + +class Effect5572(BaseEffect): + """ + eliteBonusCommandShipArmoredCS3 + + Used by: + Ships from group: Command Ship (4 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + + +class Effect5573(BaseEffect): + """ + eliteBonusCommandShipSiegeCS3 + + Used by: + Ships from group: Command Ship (4 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + + +class Effect5574(BaseEffect): + """ + eliteBonusCommandShipSkirmishCS3 + + Used by: + Ships from group: Command Ship (4 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + + +class Effect5575(BaseEffect): + """ + eliteBonusCommandShipInformationCS3 + + Used by: + Ships from group: Command Ship (4 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandShips3'), skill='Command Ships') + + +class Effect5607(BaseEffect): + """ + capacitorEmissionSystemskill + + Used by: + Implants named like: Inherent Implants 'Squire' Capacitor Emission Systems ES (6 of 6) + Modules named like: Egress Port Maximizer (8 of 8) + Skill: Capacitor Emission Systems + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capacitor Emission Systems'), + 'capacitorNeed', container.getModifiedItemAttr('capNeedBonus') * level) + + +class Effect5610(BaseEffect): + """ + shipBonusLargeEnergyTurretMaxRangeAB + + Used by: + Ship: Marshal + Ship: Paladin + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect5611(BaseEffect): + """ + shipBonusHTFalloffGB2 + + Used by: + Ship: Kronos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusGB2'), skill='Gallente Battleship') + + +class Effect5618(BaseEffect): + """ + shipBonusRHMLROF2CB + + Used by: + Ship: Raven + Ship: Widow + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Heavy', + 'speed', ship.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect5619(BaseEffect): + """ + shipBonusRHMLROFCB + + Used by: + Ship: Scorpion Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Heavy', + 'speed', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect5620(BaseEffect): + """ + shipBonusRHMLROFMB + + Used by: + Ship: Typhoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Heavy', + 'speed', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect5621(BaseEffect): + """ + shipBonusCruiseROFMB + + Used by: + Ship: Typhoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Cruise', + 'speed', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect5622(BaseEffect): + """ + shipBonusTorpedoROFMB + + Used by: + Ship: Typhoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', + 'speed', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect5628(BaseEffect): + """ + shipBonusCruiseMissileEMDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'emDamage', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect5629(BaseEffect): + """ + shipBonusCruiseMissileThermDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5630(BaseEffect): + """ + shipBonusCruiseMissileKineticDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5631(BaseEffect): + """ + shipBonusCruiseMissileExploDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5632(BaseEffect): + """ + shipBonusTorpedoMissileExploDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5633(BaseEffect): + """ + shipBonusTorpedoMissileEMDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'emDamage', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect5634(BaseEffect): + """ + shipBonusTorpedoMissileThermDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5635(BaseEffect): + """ + shipBonusTorpedoMissileKineticDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5636(BaseEffect): + """ + shipBonusHeavyMissileEMDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'emDamage', ship.getModifiedItemAttr('shipBonusMB'), skill='Minmatar Battleship') + + +class Effect5637(BaseEffect): + """ + shipBonusHeavyMissileThermDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5638(BaseEffect): + """ + shipBonusHeavyMissileKineticDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5639(BaseEffect): + """ + shipBonusHeavyMissileExploDmgMB + + Used by: + Ship: Typhoon Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusMB'), + skill='Minmatar Battleship') + + +class Effect5644(BaseEffect): + """ + shipBonusMissileVelocityCC2 + + Used by: + Ship: Cerberus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect5647(BaseEffect): + """ + covertOpsCloakCPUPercentRoleBonus + + Used by: + Ships from group: Expedition Frigate (2 of 2) + Ship: Astero + Ship: Enforcer + Ship: Pacifier + Ship: Victor + Ship: Victorieux Luxury Yacht + Ship: Virtuoso + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Cloaking'), + 'cpu', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5650(BaseEffect): + """ + shipArmorResistanceAF1 + + Used by: + Ship: Malediction + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('Em', 'Explosive', 'Kinetic', 'Thermal') + for damageType in damageTypes: + fit.ship.boostItemAttr('armor{0}DamageResonance'.format(damageType), ship.getModifiedItemAttr('shipBonusAF'), + skill='Amarr Frigate') + + +class Effect5657(BaseEffect): + """ + Interceptor2ShieldResist + + Used by: + Ship: Raptor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + damageTypes = ('Em', 'Explosive', 'Kinetic', 'Thermal') + for damageType in damageTypes: + fit.ship.boostItemAttr('shield{0}DamageResonance'.format(damageType), + ship.getModifiedItemAttr('eliteBonusInterceptor2'), skill='Interceptors') + + +class Effect5673(BaseEffect): + """ + interceptor2ProjectileDamage + + Used by: + Ship: Claw + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusInterceptor2'), + skill='Interceptors') + + +class Effect5676(BaseEffect): + """ + shipBonusSmallMissileExplosionRadiusCD2 + + Used by: + Ship: Flycatcher + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCD2'), skill='Caldari Destroyer') + + +class Effect5688(BaseEffect): + """ + shipBonusMissileVelocityAD2 + + Used by: + Ship: Heretic + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', ship.getModifiedItemAttr('shipBonusAD2'), skill='Amarr Destroyer') + + +class Effect5695(BaseEffect): + """ + eliteBonusInterdictorsArmorResist1 + + Used by: + Ship: Heretic + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('Em', 'Thermal', 'Explosive', 'Kinetic'): + fit.ship.boostItemAttr('armor%sDamageResonance' % damageType, + ship.getModifiedItemAttr('eliteBonusInterdictors1'), skill='Interdictors') + + +class Effect5717(BaseEffect): + """ + implantSetWarpSpeed + + Used by: + Implants named like: grade Ascendancy (12 of 12) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, implant, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == 'Cyberimplant', + 'WarpSBonus', implant.getModifiedItemAttr('implantSetWarpSpeed')) + + +class Effect5721(BaseEffect): + """ + shipBonusMETOptimalRangePirateFaction + + Used by: + Ships named like: Stratios (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5722(BaseEffect): + """ + shipHybridOptimalGD1 + + Used by: + Ship: Eris + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusGD1'), skill='Gallente Destroyer') + + +class Effect5723(BaseEffect): + """ + eliteBonusInterdictorsMWDSigRadius2 + + Used by: + Ships from group: Interdictor (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', ship.getModifiedItemAttr('eliteBonusInterdictors2'), + skill='Interdictors') + + +class Effect5724(BaseEffect): + """ + shipSHTOptimalBonusGF + + Used by: + Ship: Ares + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect5725(BaseEffect): + """ + shipBonusRemoteRepairAmountPirateFaction + + Used by: + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5726(BaseEffect): + """ + shipBonusLETOptimalRangePirateFaction + + Used by: + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5733(BaseEffect): + """ + eliteBonusMaraudersHeavyMissileDamageExpRole1 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosiveDamage', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect5734(BaseEffect): + """ + eliteBonusMaraudersHeavyMissileDamageKinRole1 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'kineticDamage', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect5735(BaseEffect): + """ + eliteBonusMaraudersHeavyMissileDamageEMRole1 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'emDamage', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect5736(BaseEffect): + """ + eliteBonusMaraudersHeavyMissileDamageThermRole1 + + Used by: + Ship: Golem + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'thermalDamage', ship.getModifiedItemAttr('eliteBonusViolatorsRole1')) + + +class Effect5737(BaseEffect): + """ + shipScanProbeStrengthBonusPirateFaction + + Used by: + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseSensorStrength', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5738(BaseEffect): + """ + shipBonusRemoteRepairRangePirateFaction2 + + Used by: + Ship: Nestor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'maxRange', ship.getModifiedItemAttr('shipBonusRole8')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'falloffEffectiveness', ship.getModifiedItemAttr('shipBonusRole8')) + + +class Effect5754(BaseEffect): + """ + overloadSelfTrackingModuleBonus + + Used by: + Modules named like: Tracking Computer (19 of 19) + Variations of module: Tracking Disruptor I (6 of 6) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('maxRangeBonus', module.getModifiedItemAttr('overloadTrackingModuleStrengthBonus')) + module.boostItemAttr('falloffBonus', module.getModifiedItemAttr('overloadTrackingModuleStrengthBonus')) + module.boostItemAttr('trackingSpeedBonus', module.getModifiedItemAttr('overloadTrackingModuleStrengthBonus')) + + +class Effect5757(BaseEffect): + """ + overloadSelfSensorModuleBonus + + Used by: + Modules from group: Remote Sensor Booster (8 of 8) + Modules from group: Sensor Booster (16 of 16) + Modules from group: Sensor Dampener (6 of 6) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('maxTargetRangeBonus', module.getModifiedItemAttr('overloadSensorModuleStrengthBonus')) + module.boostItemAttr('scanResolutionBonus', module.getModifiedItemAttr('overloadSensorModuleStrengthBonus'), + stackingPenalties=True) + + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + module.boostItemAttr( + 'scan{}StrengthPercent'.format(scanType), + module.getModifiedItemAttr('overloadSensorModuleStrengthBonus'), + stackingPenalties=True + ) + + +class Effect5758(BaseEffect): + """ + overloadSelfPainterBonus + + Used by: + Modules from group: Target Painter (8 of 8) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('signatureRadiusBonus', module.getModifiedItemAttr('overloadPainterStrengthBonus') or 0) + + +class Effect5769(BaseEffect): + """ + repairDroneHullBonusBonus + + Used by: + Modules named like: Drone Repair Augmentor (8 of 8) + Skill: Repair Drone Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Logistic Drone', + 'structureDamageAmount', container.getModifiedItemAttr('damageHP') * level) + + +class Effect5778(BaseEffect): + """ + shipMissileRoFMF2 + + Used by: + Ship: Breacher + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect5779(BaseEffect): + """ + shipBonusSPTFalloffMF2 + + Used by: + Ship: Pacifier + Ship: Rifter + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect5793(BaseEffect): + """ + ewSkillTrackingDisruptionRangeDisruptionBonus + + Used by: + Modules named like: Tracking Diagnostic Subroutines (8 of 8) + Skill: Weapon Destabilization + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + for attr in ('maxRangeBonus', 'falloffBonus'): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), + attr, container.getModifiedItemAttr('scanSkillEwStrengthBonus') * level) + + +class Effect5802(BaseEffect): + """ + shipBonusAfterburnerSpeedFactor2CB + + Used by: + Ship: Nightmare + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'speedFactor', module.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect5803(BaseEffect): + """ + shipBonusSentryDroneDamageMultiplierPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5804(BaseEffect): + """ + shipBonusHeavyDroneDamageMultiplierPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5805(BaseEffect): + """ + shipBonusSentryDroneHPPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'hp', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5806(BaseEffect): + """ + shipBonusSentryDroneArmorHpPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'armorHP', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5807(BaseEffect): + """ + shipBonusSentryDroneShieldHpPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5808(BaseEffect): + """ + shipBonusHeavyDroneShieldHpPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5809(BaseEffect): + """ + shipBonusHeavyDroneArmorHpPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'armorHP', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5810(BaseEffect): + """ + shipBonusHeavyDroneHPPirateFaction + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'hp', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5811(BaseEffect): + """ + shipBonusKineticMissileDamageGB2 + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusGB2'), + skill='Gallente Battleship') + + +class Effect5812(BaseEffect): + """ + shipBonusThermalMissileDamageGB2 + + Used by: + Ship: Rattlesnake + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusGB2'), + skill='Gallente Battleship') + + +class Effect5813(BaseEffect): + """ + shipBonusAfterburnerSpeedFactorCF2 + + Used by: + Ship: Imp + Ship: Succubus + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'speedFactor', module.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5814(BaseEffect): + """ + shipBonusKineticMissileDamageGF + + Used by: + Ship: Whiptail + Ship: Worm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect5815(BaseEffect): + """ + shipBonusThermalMissileDamageGF + + Used by: + Ship: Whiptail + Ship: Worm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect5816(BaseEffect): + """ + shipBonusLightDroneDamageMultiplierPirateFaction + + Used by: + Ship: Whiptail + Ship: Worm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5817(BaseEffect): + """ + shipBonusLightDroneHPPirateFaction + + Used by: + Ship: Whiptail + Ship: Worm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'hp', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5818(BaseEffect): + """ + shipBonusLightDroneArmorHPPirateFaction + + Used by: + Ship: Whiptail + Ship: Worm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'armorHP', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5819(BaseEffect): + """ + shipBonusLightDroneShieldHPPirateFaction + + Used by: + Ship: Whiptail + Ship: Worm + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5820(BaseEffect): + """ + shipBonusAfterburnerSpeedFactorCC2 + + Used by: + Ship: Fiend + Ship: Phantasm + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'speedFactor', module.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect5821(BaseEffect): + """ + shipBonusMediumDroneDamageMultiplierPirateFaction + + Used by: + Ship: Chameleon + Ship: Gila + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5822(BaseEffect): + """ + shipBonusMediumDroneHPPirateFaction + + Used by: + Ship: Chameleon + Ship: Gila + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'hp', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5823(BaseEffect): + """ + shipBonusMediumDroneArmorHPPirateFaction + + Used by: + Ship: Chameleon + Ship: Gila + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'armorHP', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5824(BaseEffect): + """ + shipBonusMediumDroneShieldHPPirateFaction + + Used by: + Ship: Chameleon + Ship: Gila + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect5825(BaseEffect): + """ + shipBonusKineticMissileDamageGC2 + + Used by: + Ship: Chameleon + Ship: Gila + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect5826(BaseEffect): + """ + shipBonusThermalMissileDamageGC2 + + Used by: + Ship: Chameleon + Ship: Gila + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect5827(BaseEffect): + """ + shipBonusTDOptimalBonusAF1 + + Used by: + Ship: Crucifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), + 'maxRange', ship.getModifiedItemAttr('shipBonusAF'), skill='Amarr Frigate') + + +class Effect5829(BaseEffect): + """ + shipBonusMiningDurationORE3 + + Used by: + Ships from group: Exhumer (3 of 3) + Ships from group: Mining Barge (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'duration', ship.getModifiedItemAttr('shipBonusORE3'), skill='Mining Barge') + + +class Effect5832(BaseEffect): + """ + shipBonusMiningIceHarvestingRangeORE2 + + Used by: + Variations of ship: Covetor (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Mining') or mod.item.requiresSkill('Ice Harvesting'), + 'maxRange', ship.getModifiedItemAttr('shipBonusORE2'), skill='Mining Barge') + + +class Effect5839(BaseEffect): + """ + eliteBargeShieldResistance1 + + Used by: + Ships from group: Exhumer (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'thermal', 'explosive', 'kinetic'): + fit.ship.boostItemAttr('shield{}DamageResonance'.format(damageType.capitalize()), + ship.getModifiedItemAttr('eliteBonusBarge1'), skill='Exhumers') + + +class Effect5840(BaseEffect): + """ + eliteBargeBonusMiningDurationBarge2 + + Used by: + Ships from group: Exhumer (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'duration', ship.getModifiedItemAttr('eliteBonusBarge2'), skill='Exhumers') + + +class Effect5852(BaseEffect): + """ + eliteBonusExpeditionMining1 + + Used by: + Ship: Prospect + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), + 'miningAmount', module.getModifiedItemAttr('eliteBonusExpedition1'), + skill='Expedition Frigates') + + +class Effect5853(BaseEffect): + """ + eliteBonusExpeditionSigRadius2 + + Used by: + Ship: Prospect + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('signatureRadius', ship.getModifiedItemAttr('eliteBonusExpedition2'), + skill='Expedition Frigates') + + +class Effect5862(BaseEffect): + """ + shipMissileEMDamageCB + + Used by: + Ship: Barghest + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'emDamage', ship.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect5863(BaseEffect): + """ + shipMissileKinDamageCB + + Used by: + Ship: Barghest + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'kineticDamage', ship.getModifiedItemAttr('shipBonusCB'), + skill='Caldari Battleship') + + +class Effect5864(BaseEffect): + """ + shipMissileThermDamageCB + + Used by: + Ship: Barghest + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'thermalDamage', ship.getModifiedItemAttr('shipBonusCB'), + skill='Caldari Battleship') + + +class Effect5865(BaseEffect): + """ + shipMissileExploDamageCB + + Used by: + Ship: Barghest + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', ship.getModifiedItemAttr('shipBonusCB'), + skill='Caldari Battleship') + + +class Effect5866(BaseEffect): + """ + shipBonusWarpScrambleMaxRangeGB + + Used by: + Ship: Barghest + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', + 'maxRange', ship.getModifiedItemAttr('shipBonusGB'), skill='Gallente Battleship') + + +class Effect5867(BaseEffect): + """ + shipBonusMissileExplosionDelayPirateFaction2 + + Used by: + Ship: Barghest + Ship: Garmur + Ship: Orthrus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosionDelay', ship.getModifiedItemAttr('shipBonusRole8')) + + +class Effect5868(BaseEffect): + """ + drawbackCargoCapacity + + Used by: + Modules named like: Transverse Bulkhead (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('capacity', module.getModifiedItemAttr('drawback')) + + +class Effect5869(BaseEffect): + """ + eliteIndustrialWarpSpeedBonus1 + + Used by: + Ships from group: Blockade Runner (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', ship.getModifiedItemAttr('eliteBonusIndustrial1'), + skill='Transport Ships') + + +class Effect5870(BaseEffect): + """ + shipBonusShieldBoostCI2 + + Used by: + Ship: Bustard + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusCI2'), skill='Caldari Industrial') + + +class Effect5871(BaseEffect): + """ + shipBonusShieldBoostMI2 + + Used by: + Ship: Mastodon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', ship.getModifiedItemAttr('shipBonusMI2'), skill='Minmatar Industrial') + + +class Effect5872(BaseEffect): + """ + shipBonusArmorRepairAI2 + + Used by: + Ship: Impel + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusAI2'), + skill='Amarr Industrial') + + +class Effect5873(BaseEffect): + """ + shipBonusArmorRepairGI2 + + Used by: + Ship: Occator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', ship.getModifiedItemAttr('shipBonusGI2'), + skill='Gallente Industrial') + + +class Effect5874(BaseEffect): + """ + eliteIndustrialFleetCapacity1 + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('fleetHangarCapacity', ship.getModifiedItemAttr('eliteBonusIndustrial1'), + skill='Transport Ships') + + +class Effect5881(BaseEffect): + """ + eliteIndustrialShieldResists2 + + Used by: + Ship: Bustard + Ship: Mastodon + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'thermal', 'explosive', 'kinetic'): + fit.ship.boostItemAttr('shield{}DamageResonance'.format(damageType.capitalize()), + ship.getModifiedItemAttr('eliteBonusIndustrial2'), skill='Transport Ships') + + +class Effect5888(BaseEffect): + """ + eliteIndustrialArmorResists2 + + Used by: + Ship: Impel + Ship: Occator + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'thermal', 'explosive', 'kinetic'): + fit.ship.boostItemAttr('armor{}DamageResonance'.format(damageType.capitalize()), + ship.getModifiedItemAttr('eliteBonusIndustrial2'), skill='Transport Ships') + + +class Effect5889(BaseEffect): + """ + eliteIndustrialABHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), + 'overloadSpeedFactorBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5890(BaseEffect): + """ + eliteIndustrialMWDHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'overloadSpeedFactorBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5891(BaseEffect): + """ + eliteIndustrialArmorHardenerHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), + 'overloadHardeningBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5892(BaseEffect): + """ + eliteIndustrialReactiveArmorHardenerHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), + 'overloadSelfDurationBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5893(BaseEffect): + """ + eliteIndustrialShieldHardenerHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Tactical Shield Manipulation'), + 'overloadHardeningBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5896(BaseEffect): + """ + eliteIndustrialShieldBoosterHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'overloadShieldBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'overloadSelfDurationBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5899(BaseEffect): + """ + eliteIndustrialArmorRepairHeatBonus + + Used by: + Ships from group: Deep Space Transport (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'overloadArmorDamageAmount', ship.getModifiedItemAttr('roleBonusOverheatDST')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'overloadSelfDurationBonus', ship.getModifiedItemAttr('roleBonusOverheatDST')) + + +class Effect5900(BaseEffect): + """ + warpSpeedAddition + + Used by: + Modules from group: Warp Accelerator (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('warpSpeedMultiplier', module.getModifiedItemAttr('warpSpeedAdd')) + + +class Effect5901(BaseEffect): + """ + roleBonusBulkheadCPU + + Used by: + Ships from group: Freighter (4 of 5) + Ships from group: Jump Freighter (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Reinforced Bulkhead', + 'cpu', ship.getModifiedItemAttr('cpuNeedBonus')) + + +class Effect5911(BaseEffect): + """ + onlineJumpDriveConsumptionAmountBonusPercentage + + Used by: + Modules from group: Jump Drive Economizer (3 of 3) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('jumpDriveConsumptionAmount', + module.getModifiedItemAttr('consumptionQuantityBonusPercentage'), stackingPenalties=True) + + +class Effect5912(BaseEffect): + """ + systemRemoteCapTransmitterAmount + + Used by: + Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'powerTransferAmount', beacon.getModifiedItemAttr('energyTransferAmountBonus'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5913(BaseEffect): + """ + systemArmorHP + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.multiplyItemAttr('armorHP', beacon.getModifiedItemAttr('armorHPMultiplier')) + + +class Effect5914(BaseEffect): + """ + systemEnergyNeutMultiplier + + Used by: + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', + beacon.getModifiedItemAttr('energyWarfareStrengthMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5915(BaseEffect): + """ + systemEnergyVampireMultiplier + + Used by: + Celestials named like: Pulsar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', + beacon.getModifiedItemAttr('energyWarfareStrengthMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5916(BaseEffect): + """ + systemDamageExplosiveBombs + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'explosiveDamage', beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5917(BaseEffect): + """ + systemDamageKineticBombs + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'kineticDamage', beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5918(BaseEffect): + """ + systemDamageThermalBombs + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'thermalDamage', beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5919(BaseEffect): + """ + systemDamageEMBombs + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'emDamage', beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5920(BaseEffect): + """ + systemAoeCloudSize + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeCloudSize', beacon.getModifiedItemAttr('aoeCloudSizeMultiplier')) + + +class Effect5921(BaseEffect): + """ + systemTargetPainterMultiplier + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Target Painting'), + 'signatureRadiusBonus', + beacon.getModifiedItemAttr('targetPainterStrengthMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5922(BaseEffect): + """ + systemWebifierStrengthMultiplier + + Used by: + Celestials named like: Black Hole Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Stasis Web', + 'speedFactor', beacon.getModifiedItemAttr('stasisWebStrengthMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5923(BaseEffect): + """ + systemNeutBombs + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'energyNeutralizerAmount', + beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5924(BaseEffect): + """ + systemGravimetricECMBomb + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'scanGravimetricStrengthBonus', + beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5925(BaseEffect): + """ + systemLadarECMBomb + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'scanLadarStrengthBonus', + beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5926(BaseEffect): + """ + systemMagnetrometricECMBomb + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'scanMagnetometricStrengthBonus', + beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5927(BaseEffect): + """ + systemRadarECMBomb + + Used by: + Celestials named like: Red Giant Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Bomb Deployment'), + 'scanRadarStrengthBonus', + beacon.getModifiedItemAttr('smartbombDamageMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5929(BaseEffect): + """ + systemDroneTracking + + Used by: + Celestials named like: Magnetar Effect Beacon Class (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.drones.filteredItemMultiply(lambda drone: True, + 'trackingSpeed', beacon.getModifiedItemAttr('trackingSpeedMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect5934(BaseEffect): + """ + warpScrambleBlockMWDWithNPCEffect + + Used by: + Modules named like: Warp Scrambler (27 of 27) + """ + + runTime = 'early' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' not in context: + return + + fit.ship.increaseItemAttr('warpScrambleStatus', module.getModifiedItemAttr('warpScrambleStrength')) + + # this is such a dirty hack + for mod in fit.modules: + if not mod.isEmpty and mod.state > FittingModuleState.ONLINE and ( + mod.item.requiresSkill('Micro Jump Drive Operation') or + mod.item.requiresSkill('High Speed Maneuvering') + ): + mod.state = FittingModuleState.ONLINE + if not mod.isEmpty and mod.item.requiresSkill('Micro Jump Drive Operation') and mod.state > FittingModuleState.ONLINE: + mod.state = FittingModuleState.ONLINE + + +class Effect5938(BaseEffect): + """ + shipBonusSmallMissileExplosionRadiusCF2 + + Used by: + Ship: Crow + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + 'aoeCloudSize', ship.getModifiedItemAttr('shipBonusCF2'), skill='Caldari Frigate') + + +class Effect5939(BaseEffect): + """ + shipRocketRoFBonusAF2 + + Used by: + Ship: Malediction + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rocket', + 'speed', ship.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect5940(BaseEffect): + """ + eliteBonusInterdictorsSHTRoF1 + + Used by: + Ship: Eris + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'speed', ship.getModifiedItemAttr('eliteBonusInterdictors1'), skill='Interdictors') + + +class Effect5944(BaseEffect): + """ + shipMissileLauncherRoFAD1Fixed + + Used by: + Ship: Heretic + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', ship.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + + +class Effect5945(BaseEffect): + """ + cloakingPrototype + + Used by: + Modules named like: Prototype Cloaking Device I (2 of 2) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, module, context): + # Set flag which is used to determine if ship is cloaked or not + # This is used to apply cloak-only bonuses, like Black Ops' speed bonus + # Doesn't apply to covops cloaks + fit.extraAttributes['cloaked'] = True + # Apply speed penalty + fit.ship.multiplyItemAttr('maxVelocity', module.getModifiedItemAttr('maxVelocityModifier')) + + +class Effect5951(BaseEffect): + """ + drawbackWarpSpeed + + Used by: + Modules from group: Rig Anchor (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', module.getModifiedItemAttr('drawback'), stackingPenalties=True) + + +class Effect5956(BaseEffect): + """ + shipMETDamageBonusAC2 + + Used by: + Ship: Devoter + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect5957(BaseEffect): + """ + eliteBonusHeavyInterdictorsMETOptimal + + Used by: + Ship: Devoter + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors1'), + skill='Heavy Interdiction Cruisers') + + +class Effect5958(BaseEffect): + """ + shipHybridTrackingGC + + Used by: + Ship: Lachesis + Ship: Phobos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect5959(BaseEffect): + """ + eliteBonusHeavyInterdictorsHybridOptimal1 + + Used by: + Ship: Phobos + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusHeavyInterdictors1'), + skill='Heavy Interdiction Cruisers') + + +class Effect5994(BaseEffect): + """ + resistanceKillerHullAll + + Used by: + Modules named like: Polarized (12 of 18) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): + tgtAttr = '{}DamageResonance'.format(dmgType) + fit.ship.forceItemAttr(tgtAttr, module.getModifiedItemAttr('resistanceKillerHull')) + + +class Effect5995(BaseEffect): + """ + resistanceKillerShieldArmorAll + + Used by: + Modules named like: Polarized (12 of 18) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for layer in ('armor', 'shield'): + for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): + tgtAttr = '{}{}DamageResonance'.format(layer, dmgType.capitalize()) + fit.ship.forceItemAttr(tgtAttr, module.getModifiedItemAttr('resistanceKiller')) + + +class Effect5998(BaseEffect): + """ + freighterSMACapacityBonusO1 + + Used by: + Ship: Bowhead + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + # todo: stacking? + fit.ship.boostItemAttr('agility', ship.getModifiedItemAttr('freighterBonusO2'), skill='ORE Freighter', + stackingPenalties=True) + + +class Effect6001(BaseEffect): + """ + freighterAgilityBonus2O2 + + Used by: + Ship: Bowhead + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('shipMaintenanceBayCapacity', ship.getModifiedItemAttr('freighterBonusO1'), + skill='ORE Freighter') + + +class Effect6006(BaseEffect): + """ + shipSETDamageAmarrTacticalDestroyer1 + + Used by: + Ship: Confessor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusTacticalDestroyerAmarr1'), + skill='Amarr Tactical Destroyer') + + +class Effect6007(BaseEffect): + """ + shipSETCapNeedAmarrTacticalDestroyer2 + + Used by: + Ship: Confessor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusTacticalDestroyerAmarr2'), + skill='Amarr Tactical Destroyer') + + +class Effect6008(BaseEffect): + """ + shipHeatDamageAmarrTacticalDestroyer3 + + Used by: + Ship: Confessor + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusTacticalDestroyerAmarr3'), + skill='Amarr Tactical Destroyer') + + +class Effect6009(BaseEffect): + """ + probeLauncherCPUPercentRoleBonusT3 + + Used by: + Ships from group: Strategic Cruiser (4 of 4) + Ships from group: Tactical Destroyer (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Astrometrics'), 'cpu', src.getModifiedItemAttr('roleBonusT3ProbeCPU')) + + +class Effect6010(BaseEffect): + """ + shipModeMaxTargetRangePostDiv + + Used by: + Modules named like: Sharpshooter Mode (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr( + 'maxTargetRange', + 1 / module.getModifiedItemAttr('modeMaxTargetRangePostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6011(BaseEffect): + """ + shipModeSETOptimalRangePostDiv + + Used by: + Module: Confessor Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('Small Energy Turret'), + 'maxRange', + 1 / module.getModifiedItemAttr('modeMaxRangePostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6012(BaseEffect): + """ + shipModeScanStrengthPostDiv + + Used by: + Modules named like: Sharpshooter Mode (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + fit.ship.multiplyItemAttr( + 'scan{}Strength'.format(scanType), + 1 / (module.getModifiedItemAttr('mode{}StrengthPostDiv'.format(scanType)) or 1), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6014(BaseEffect): + """ + modeSigRadiusPostDiv + + Used by: + Module: Confessor Defense Mode + Module: Jackdaw Defense Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('signatureRadius', 1 / module.getModifiedItemAttr('modeSignatureRadiusPostDiv'), + stackingPenalties=True, penaltyGroup='postDiv') + + +class Effect6015(BaseEffect): + """ + modeArmorResonancePostDiv + + Used by: + Modules named like: Defense Mode (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for srcResType, tgtResType in ( + ('Em', 'Em'), + ('Explosive', 'Explosive'), + ('Kinetic', 'Kinetic'), + ('Thermic', 'Thermal') + ): + fit.ship.multiplyItemAttr( + 'armor{0}DamageResonance'.format(tgtResType), + 1 / module.getModifiedItemAttr('mode{0}ResistancePostDiv'.format(srcResType)), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6016(BaseEffect): + """ + modeAgilityPostDiv + + Used by: + Modules named like: Propulsion Mode (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr( + 'agility', + 1 / module.getModifiedItemAttr('modeAgilityPostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6017(BaseEffect): + """ + modeVelocityPostDiv + + Used by: + Module: Jackdaw Propulsion Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr( + 'maxVelocity', + 1 / module.getModifiedItemAttr('modeVelocityPostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6020(BaseEffect): + """ + shipBonusEnergyNeutOptimalRS3 + + Used by: + Ship: Pilgrim + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect6021(BaseEffect): + """ + shipBonusEnergyNosOptimalRS3 + + Used by: + Ship: Pilgrim + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect6025(BaseEffect): + """ + eliteReconBonusMHTOptimalRange1 + + Used by: + Ship: Lachesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('eliteBonusReconShip1'), skill='Recon Ships') + + +class Effect6027(BaseEffect): + """ + eliteReconBonusMPTdamage1 + + Used by: + Ship: Huginn + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('eliteBonusReconShip1'), + skill='Recon Ships') + + +class Effect6032(BaseEffect): + """ + remoteCapacitorTransmitterPowerNeedBonusEffect + + Used by: + Ships from group: Logistics (3 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', + 'power', ship.getModifiedItemAttr('powerTransferPowerNeedBonus')) + + +class Effect6036(BaseEffect): + """ + shipHeatDamageMinmatarTacticalDestroyer3 + + Used by: + Ship: Svipul + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusTacticalDestroyerMinmatar3'), + skill='Minmatar Tactical Destroyer') + + +class Effect6037(BaseEffect): + """ + shipSPTDamageMinmatarTacticalDestroyer1 + + Used by: + Ship: Svipul + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusTacticalDestroyerMinmatar1'), + skill='Minmatar Tactical Destroyer') + + +class Effect6038(BaseEffect): + """ + shipSPTOptimalMinmatarTacticalDestroyer2 + + Used by: + Ship: Svipul + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('shipBonusTacticalDestroyerMinmatar2'), + skill='Minmatar Tactical Destroyer') + + +class Effect6039(BaseEffect): + """ + shipModeSPTTrackingPostDiv + + Used by: + Module: Svipul Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'trackingSpeed', + 1 / module.getModifiedItemAttr('modeTrackingPostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6040(BaseEffect): + """ + modeMWDSigRadiusPostDiv + + Used by: + Module: Svipul Defense Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'signatureRadiusBonus', + 1 / module.getModifiedItemAttr('modeMWDSigPenaltyPostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6041(BaseEffect): + """ + modeShieldResonancePostDiv + + Used by: + Module: Jackdaw Defense Mode + Module: Svipul Defense Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for srcResType, tgtResType in ( + ('Em', 'Em'), + ('Explosive', 'Explosive'), + ('Kinetic', 'Kinetic'), + ('Thermic', 'Thermal') + ): + fit.ship.multiplyItemAttr( + 'shield{0}DamageResonance'.format(tgtResType), + 1 / module.getModifiedItemAttr('mode{0}ResistancePostDiv'.format(srcResType)), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6045(BaseEffect): + """ + shipBonusSentryDamageMultiplierGC3 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGC3'), skill='Gallente Cruiser') + + +class Effect6046(BaseEffect): + """ + shipBonusSentryHPGC3 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'hp', ship.getModifiedItemAttr('shipBonusGC3'), skill='Gallente Cruiser') + + +class Effect6047(BaseEffect): + """ + shipBonusSentryArmorHPGC3 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'armorHP', ship.getModifiedItemAttr('shipBonusGC3'), skill='Gallente Cruiser') + + +class Effect6048(BaseEffect): + """ + shipBonusSentryShieldHPGC3 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Sentry Drone Interfacing'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusGC3'), skill='Gallente Cruiser') + + +class Effect6051(BaseEffect): + """ + shipBonusLightDroneDamageMultiplierGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6052(BaseEffect): + """ + shipBonusMediumDroneDamageMultiplierGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6053(BaseEffect): + """ + shipBonusHeavyDroneDamageMultiplierGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6054(BaseEffect): + """ + shipBonusHeavyDroneHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'hp', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6055(BaseEffect): + """ + shipBonusHeavyDroneArmorHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'armorHP', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6056(BaseEffect): + """ + shipBonusHeavyDroneShieldHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Heavy Drone Operation'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6057(BaseEffect): + """ + shipBonusMediumDroneShieldHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6058(BaseEffect): + """ + shipBonusMediumDroneArmorHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'armorHP', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6059(BaseEffect): + """ + shipBonusMediumDroneHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Medium Drone Operation'), + 'hp', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6060(BaseEffect): + """ + shipBonusLightDroneHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'hp', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6061(BaseEffect): + """ + shipBonusLightDroneArmorHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'armorHP', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6062(BaseEffect): + """ + shipBonusLightDroneShieldHPGC2 + + Used by: + Ship: Ishtar + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Light Drone Operation'), + 'shieldCapacity', ship.getModifiedItemAttr('shipBonusGC2'), skill='Gallente Cruiser') + + +class Effect6063(BaseEffect): + """ + entosisLink + + Used by: + Modules from group: Entosis Link (6 of 6) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.forceItemAttr('disallowAssistance', module.getModifiedItemAttr('disallowAssistance')) + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + fit.ship.boostItemAttr( + 'scan{}Strength'.format(scanType), + module.getModifiedItemAttr('scan{}StrengthPercent'.format(scanType)), + stackingPenalties=True + ) + + +class Effect6076(BaseEffect): + """ + shipModeMissileVelocityPostDiv + + Used by: + Module: Jackdaw Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeMultiply( + lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', + 1 / module.getModifiedItemAttr('modeMaxRangePostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6077(BaseEffect): + """ + shipHeatDamageCaldariTacticalDestroyer3 + + Used by: + Ship: Jackdaw + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusTacticalDestroyerCaldari3'), + skill='Caldari Tactical Destroyer') + + +class Effect6083(BaseEffect): + """ + shipSmallMissileDmgPirateFaction + + Used by: + Ship: Jackdaw + Ship: Sunesis + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'explosive', 'kinetic', 'thermal'): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + '{0}Damage'.format(damageType), ship.getModifiedItemAttr('shipBonusRole7')) + + +class Effect6085(BaseEffect): + """ + shipMissileRoFCaldariTacticalDestroyer1 + + Used by: + Ship: Jackdaw + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'speed', ship.getModifiedItemAttr('shipBonusTacticalDestroyerCaldari1'), + skill='Caldari Tactical Destroyer') + + +class Effect6088(BaseEffect): + """ + shipBonusHeavyAssaultMissileAllDamageMC2 + + Used by: + Ship: Rapier + Ship: Scythe Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'explosive', 'kinetic', 'thermal'): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + '{0}Damage'.format(damageType), ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect6093(BaseEffect): + """ + shipBonusHeavyMissileAllDamageMC2 + + Used by: + Ship: Rapier + Ship: Scythe Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'explosive', 'kinetic', 'thermal'): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + '{0}Damage'.format(damageType), ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect6096(BaseEffect): + """ + shipBonusLightMissileAllDamageMC2 + + Used by: + Ship: Rapier + Ship: Scythe Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + for damageType in ('em', 'explosive', 'kinetic', 'thermal'): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + '{0}Damage'.format(damageType), ship.getModifiedItemAttr('shipBonusMC2'), + skill='Minmatar Cruiser') + + +class Effect6098(BaseEffect): + """ + shipMissileReloadTimeCaldariTacticalDestroyer2 + + Used by: + Ship: Jackdaw + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), + 'reloadTime', ship.getModifiedItemAttr('shipBonusTacticalDestroyerCaldari2'), + skill='Caldari Tactical Destroyer') + + +class Effect6104(BaseEffect): + """ + entosisDurationMultiply + + Used by: + Items from market group: Ships > Capital Ships (31 of 40) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Infomorph Psychology'), + 'duration', ship.getModifiedItemAttr('entosisDurationMultiplier') or 1) + + +class Effect6110(BaseEffect): + """ + missileVelocityBonusOnline + + Used by: + Modules from group: Missile Guidance Enhancer (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', module.getModifiedItemAttr('missileVelocityBonus'), + stackingPenalties=True) + + +class Effect6111(BaseEffect): + """ + missileExplosionDelayBonusOnline + + Used by: + Modules from group: Missile Guidance Enhancer (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosionDelay', module.getModifiedItemAttr('explosionDelayBonus'), + stackingPenalties=True) + + +class Effect6112(BaseEffect): + """ + missileAOECloudSizeBonusOnline + + Used by: + Modules from group: Missile Guidance Enhancer (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeCloudSize', module.getModifiedItemAttr('aoeCloudSizeBonus'), + stackingPenalties=True) + + +class Effect6113(BaseEffect): + """ + missileAOEVelocityBonusOnline + + Used by: + Modules from group: Missile Guidance Enhancer (3 of 3) + Module: ML-EKP 'Polybolos' Ballistic Control System + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeVelocity', module.getModifiedItemAttr('aoeVelocityBonus'), + stackingPenalties=True) + + +class Effect6128(BaseEffect): + """ + scriptMissileGuidanceComputerAOECloudSizeBonusBonus + + Used by: + Charges from group: Tracking Script (2 of 2) + Charges named like: Missile Script (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('aoeCloudSizeBonus', module.getModifiedChargeAttr('aoeCloudSizeBonusBonus')) + + +class Effect6129(BaseEffect): + """ + scriptMissileGuidanceComputerAOEVelocityBonusBonus + + Used by: + Charges from group: Tracking Script (2 of 2) + Charges named like: Missile Script (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('aoeVelocityBonus', module.getModifiedChargeAttr('aoeVelocityBonusBonus')) + + +class Effect6130(BaseEffect): + """ + scriptMissileGuidanceComputerMissileVelocityBonusBonus + + Used by: + Charges named like: Missile Script (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('missileVelocityBonus', module.getModifiedChargeAttr('missileVelocityBonusBonus')) + + +class Effect6131(BaseEffect): + """ + scriptMissileGuidanceComputerExplosionDelayBonusBonus + + Used by: + Charges named like: Missile Script (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('explosionDelayBonus', module.getModifiedChargeAttr('explosionDelayBonusBonus')) + + +class Effect6135(BaseEffect): + """ + missileGuidanceComputerBonus4 + + Used by: + Modules from group: Missile Guidance Computer (3 of 3) + """ + + type = 'active' + + @staticmethod + def handler(fit, container, 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, container.getModifiedItemAttr(srcAttr), + stackingPenalties=True) + + +class Effect6144(BaseEffect): + """ + overloadSelfMissileGuidanceBonus5 + + Used by: + Modules from group: Missile Guidance Computer (3 of 3) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + for tgtAttr in ( + 'aoeCloudSizeBonus', + 'explosionDelayBonus', + 'missileVelocityBonus', + 'maxVelocityModifier', + 'aoeVelocityBonus' + ): + module.boostItemAttr(tgtAttr, module.getModifiedItemAttr('overloadTrackingModuleStrengthBonus')) + + +class Effect6148(BaseEffect): + """ + shipHeatDamageGallenteTacticalDestroyer3 + + Used by: + Ship: Hecate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'heatDamage', + ship.getModifiedItemAttr('shipBonusTacticalDestroyerGallente3'), + skill='Gallente Tactical Destroyer') + + +class Effect6149(BaseEffect): + """ + shipSHTRoFGallenteTacticalDestroyer1 + + Used by: + Ship: Hecate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'speed', ship.getModifiedItemAttr('shipBonusTacticalDestroyerGallente1'), + skill='Gallente Tactical Destroyer') + + +class Effect6150(BaseEffect): + """ + shipSHTTrackingGallenteTacticalDestroyer2 + + Used by: + Ship: Hecate + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusTacticalDestroyerGallente2'), + skill='Gallente Tactical Destroyer') + + +class Effect6151(BaseEffect): + """ + modeHullResonancePostDiv + + Used by: + Module: Hecate Defense Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + for srcResType, tgtResType in ( + ('Em', 'em'), + ('Explosive', 'explosive'), + ('Kinetic', 'kinetic'), + ('Thermic', 'thermal') + ): + fit.ship.multiplyItemAttr( + '{0}DamageResonance'.format(tgtResType), + 1 / module.getModifiedItemAttr('mode{0}ResistancePostDiv'.format(srcResType)) + ) + + +class Effect6152(BaseEffect): + """ + shipModeSHTOptimalRangePostDiv + + Used by: + Module: Hecate Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), + 'maxRange', + 1 / module.getModifiedItemAttr('modeMaxRangePostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6153(BaseEffect): + """ + modeMWDCapPostDiv + + Used by: + Module: Hecate Propulsion Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'capacitorNeed', + 1 / module.getModifiedItemAttr('modeMWDCapPostDiv') + ) + + +class Effect6154(BaseEffect): + """ + modeMWDBoostPostDiv + + Used by: + Module: Hecate Propulsion Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), + 'speedFactor', + 1 / module.getModifiedItemAttr('modeMWDVelocityPostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv' + ) + + +class Effect6155(BaseEffect): + """ + modeArmorRepDurationPostDiv + + Used by: + Module: Hecate Defense Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply( + lambda mod: mod.item.requiresSkill('Repair Systems'), + 'duration', + 1 / module.getModifiedItemAttr('modeArmorRepDurationPostDiv') + ) + + +class Effect6163(BaseEffect): + """ + passiveSpeedLimit + + Used by: + Modules from group: Entosis Link (6 of 6) + """ + + runtime = 'late' + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.extraAttributes['speedLimit'] = src.getModifiedItemAttr('speedLimit') + + +class Effect6164(BaseEffect): + """ + systemMaxVelocityPercentage + + Used by: + Celestials named like: Drifter Incursion (6 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, beacon, context): + fit.ship.boostItemAttr('maxVelocity', beacon.getModifiedItemAttr('maxVelocityMultiplier'), stackingPenalties=True) + + +class Effect6166(BaseEffect): + """ + shipBonusWDFGnullPenalties + + Used by: + Ship: Fiend + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Propulsion Jamming'), + 'speedFactorBonus', ship.getModifiedItemAttr('shipBonusAT')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Propulsion Jamming'), + 'speedBoostFactorBonus', ship.getModifiedItemAttr('shipBonusAT')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Propulsion Jamming'), + 'massBonusPercentage', ship.getModifiedItemAttr('shipBonusAT')) + + +class Effect6170(BaseEffect): + """ + entosisCPUPenalty + + Used by: + Ships from group: Interceptor (10 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Infomorph Psychology'), + 'entosisCPUAdd', ship.getModifiedItemAttr('entosisCPUPenalty')) + + +class Effect6171(BaseEffect): + """ + entosisCPUAddition + + Used by: + Modules from group: Entosis Link (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.increaseItemAttr('cpu', module.getModifiedItemAttr('entosisCPUAdd')) + + +class Effect6172(BaseEffect): + """ + battlecruiserMETRange + + Used by: + Ships named like: Harbinger (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'maxRange', ship.getModifiedItemAttr('roleBonusCBC')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'falloff', ship.getModifiedItemAttr('roleBonusCBC')) + + +class Effect6173(BaseEffect): + """ + battlecruiserMHTRange + + Used by: + Ships named like: Brutix (2 of 2) + Ship: Ferox + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'maxRange', ship.getModifiedItemAttr('roleBonusCBC')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'falloff', ship.getModifiedItemAttr('roleBonusCBC')) + + +class Effect6174(BaseEffect): + """ + battlecruiserMPTRange + + Used by: + Ships named like: Hurricane (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'maxRange', ship.getModifiedItemAttr('roleBonusCBC')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'falloff', ship.getModifiedItemAttr('roleBonusCBC')) + + +class Effect6175(BaseEffect): + """ + battlecruiserMissileRange + + Used by: + Ships named like: Drake (2 of 2) + Ship: Cyclone + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'maxVelocity', skill.getModifiedItemAttr('roleBonusCBC')) + + +class Effect6176(BaseEffect): + """ + battlecruiserDroneSpeed + + Used by: + Ship: Myrmidon + Ship: Prophecy + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'maxVelocity', ship.getModifiedItemAttr('roleBonusCBC')) + + +class Effect6177(BaseEffect): + """ + shipHybridDmg1CBC2 + + Used by: + Ship: Ferox + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusCBC2'), + skill='Caldari Battlecruiser') + + +class Effect6178(BaseEffect): + """ + shipBonusProjectileTrackingMBC2 + + Used by: + Ship: Hurricane Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusMBC2'), + skill='Minmatar Battlecruiser') + + +class Effect6184(BaseEffect): + """ + shipModuleRemoteCapacitorTransmitter + + Used by: + Modules from group: Remote Capacitor Transmitter (41 of 41) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, src, context, **kwargs): + if 'projected' in context: + amount = src.getModifiedItemAttr('powerTransferAmount') + duration = src.getModifiedItemAttr('duration') + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.addDrain(src, duration, -amount, 0) + + +class Effect6185(BaseEffect): + """ + shipModuleRemoteHullRepairer + + Used by: + Modules from group: Remote Hull Repairer (8 of 8) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' not in context: + return + bonus = module.getModifiedItemAttr('structureDamageAmount') + duration = module.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('hullRepair', bonus / duration) + + +class Effect6186(BaseEffect): + """ + shipModuleRemoteShieldBooster + + Used by: + Modules from group: Remote Shield Booster (38 of 38) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, **kwargs): + if 'projected' in context: + bonus = container.getModifiedItemAttr('shieldBonus') + duration = container.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('shieldRepair', bonus / duration, **kwargs) + + +class Effect6187(BaseEffect): + """ + energyNeutralizerFalloff + + Used by: + Modules from group: Energy Neutralizer (54 of 54) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, src, context, **kwargs): + if 'projected' in context and ((hasattr(src, 'state') and src.state >= FittingModuleState.ACTIVE) or + hasattr(src, 'amountActive')): + amount = src.getModifiedItemAttr('energyNeutralizerAmount') + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + time = src.getModifiedItemAttr('duration') + + fit.addDrain(src, time, amount, 0) + + +class Effect6188(BaseEffect): + """ + shipModuleRemoteArmorRepairer + + Used by: + Modules from group: Remote Armor Repairer (39 of 39) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, **kwargs): + if 'projected' in context: + bonus = container.getModifiedItemAttr('armorDamageAmount') + duration = container.getModifiedItemAttr('duration') / 1000.0 + rps = bonus / duration + fit.extraAttributes.increase('armorRepair', rps) + fit.extraAttributes.increase('armorRepairPreSpool', rps) + fit.extraAttributes.increase('armorRepairFullSpool', rps) + + +class Effect6195(BaseEffect): + """ + expeditionFrigateShieldResistance1 + + Used by: + Ship: Endurance + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('eliteBonusExpedition1'), + skill='Expedition Frigates') + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('eliteBonusExpedition1'), + skill='Expedition Frigates') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('eliteBonusExpedition1'), + skill='Expedition Frigates') + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('eliteBonusExpedition1'), + skill='Expedition Frigates') + + +class Effect6196(BaseEffect): + """ + expeditionFrigateBonusIceHarvestingCycleTime2 + + Used by: + Ship: Endurance + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), 'duration', + src.getModifiedItemAttr('eliteBonusExpedition2'), skill='Expedition Frigates') + + +class Effect6197(BaseEffect): + """ + energyNosferatuFalloff + + Used by: + Modules from group: Energy Nosferatu (54 of 54) + """ + + runTime = 'late' + type = 'active', 'projected' + + @staticmethod + def handler(fit, src, context, **kwargs): + amount = src.getModifiedItemAttr('powerTransferAmount') + time = src.getModifiedItemAttr('duration') + + if 'effect' in kwargs and 'projected' in context: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + if 'projected' in context: + fit.addDrain(src, time, amount, 0) + elif 'module' in context: + src.itemModifiedAttributes.force('capacitorNeed', -amount) + + +class Effect6201(BaseEffect): + """ + doomsdaySlash + + Used by: + Modules named like: Reaper (4 of 4) + """ + + type = 'active' + + +class Effect6208(BaseEffect): + """ + microJumpPortalDrive + + Used by: + Module: Micro Jump Field Generator + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadiusBonusPercent'), + stackingPenalties=True) + + +class Effect6214(BaseEffect): + """ + roleBonusCDLinksPGReduction + + Used by: + Ships from group: Command Destroyer (4 of 4) + Ship: Porpoise + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), 'power', + src.getModifiedItemAttr('roleBonusCD')) + + +class Effect6216(BaseEffect): + """ + structureEnergyNeutralizerFalloff + + Used by: + Structure Modules from group: Structure Energy Neutralizer (5 of 5) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, src, context, **kwargs): + amount = 0 + if 'projected' in context: + if (hasattr(src, 'state') and src.state >= FittingModuleState.ACTIVE) or hasattr(src, 'amountActive'): + amount = src.getModifiedItemAttr('energyNeutralizerAmount') + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + time = src.getModifiedItemAttr('duration') + + fit.addDrain(src, time, amount, 0) + + +class Effect6222(BaseEffect): + """ + structureWarpScrambleBlockMWDWithNPCEffect + + Used by: + Structure Modules from group: Structure Warp Scrambler (2 of 2) + """ + + runTime = 'early' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' in context: + fit.ship.increaseItemAttr('warpScrambleStatus', module.getModifiedItemAttr('warpScrambleStrength')) + if module.charge is not None and module.charge.ID == 47336: + for mod in fit.modules: + if not mod.isEmpty and mod.item.requiresSkill('High Speed Maneuvering') and mod.state > FittingModuleState.ONLINE: + mod.state = FittingModuleState.ONLINE + if not mod.isEmpty and mod.item.requiresSkill('Micro Jump Drive Operation') and mod.state > FittingModuleState.ONLINE: + mod.state = FittingModuleState.ONLINE + + +class Effect6230(BaseEffect): + """ + shipBonusEnergyNeutOptimalRS1 + + Used by: + Ship: Curse + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('eliteBonusReconShip1'), skill='Recon Ships') + + +class Effect6232(BaseEffect): + """ + shipBonusEnergyNeutFalloffRS2 + + Used by: + Ship: Pilgrim + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusReconShip2'), skill='Recon Ships') + + +class Effect6233(BaseEffect): + """ + shipBonusEnergyNeutFalloffRS3 + + Used by: + Ship: Curse + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect6234(BaseEffect): + """ + shipBonusEnergyNosOptimalRS1 + + Used by: + Ship: Curse + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('eliteBonusReconShip1'), skill='Recon Ships') + + +class Effect6237(BaseEffect): + """ + shipBonusEnergyNosFalloffRS2 + + Used by: + Ship: Pilgrim + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusReconShip2'), skill='Recon Ships') + + +class Effect6238(BaseEffect): + """ + shipBonusEnergyNosFalloffRS3 + + Used by: + Ship: Curse + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect6239(BaseEffect): + """ + miningFrigateBonusIceHarvestingCycleTime2 + + Used by: + Ship: Endurance + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), 'duration', + src.getModifiedItemAttr('shipBonusOREfrig2'), skill='Mining Frigate') + + +class Effect6241(BaseEffect): + """ + shipBonusEnergyNeutFalloffAD1 + + Used by: + Ship: Dragoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + + +class Effect6242(BaseEffect): + """ + shipBonusEnergyNeutOptimalAD2 + + Used by: + Ship: Dragoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('shipBonusAD2'), skill='Amarr Destroyer') + + +class Effect6245(BaseEffect): + """ + shipBonusEnergyNosOptimalAD2 + + Used by: + Ship: Dragoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('shipBonusAD2'), skill='Amarr Destroyer') + + +class Effect6246(BaseEffect): + """ + shipBonusEnergyNosFalloffAD1 + + Used by: + Ship: Dragoon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAD1'), skill='Amarr Destroyer') + + +class Effect6253(BaseEffect): + """ + shipBonusEnergyNeutOptimalAB + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect6256(BaseEffect): + """ + shipBonusEnergyNeutFalloffAB2 + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAB2'), skill='Amarr Battleship') + + +class Effect6257(BaseEffect): + """ + shipBonusEnergyNosOptimalAB + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('shipBonusAB'), skill='Amarr Battleship') + + +class Effect6260(BaseEffect): + """ + shipBonusEnergyNosFalloffAB2 + + Used by: + Ship: Armageddon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAB2'), skill='Amarr Battleship') + + +class Effect6267(BaseEffect): + """ + shipBonusEnergyNeutOptimalEAF1 + + Used by: + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('eliteBonusElectronicAttackShip1'), + skill='Electronic Attack Ships') + + +class Effect6272(BaseEffect): + """ + shipBonusEnergyNeutFalloffEAF3 + + Used by: + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusElectronicAttackShip3'), + skill='Electronic Attack Ships') + + +class Effect6273(BaseEffect): + """ + shipBonusEnergyNosOptimalEAF1 + + Used by: + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('eliteBonusElectronicAttackShip1'), + skill='Electronic Attack Ships') + + +class Effect6278(BaseEffect): + """ + shipBonusEnergyNosFalloffEAF3 + + Used by: + Ship: Sentinel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusElectronicAttackShip3'), + skill='Electronic Attack Ships') + + +class Effect6281(BaseEffect): + """ + shipBonusEnergyNeutOptimalAF2 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect6285(BaseEffect): + """ + shipBonusEnergyNeutFalloffAF3 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonus3AF'), skill='Amarr Frigate') + + +class Effect6287(BaseEffect): + """ + shipBonusEnergyNosOptimalAF2 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect6291(BaseEffect): + """ + shipBonusEnergyNosFalloffAF3 + + Used by: + Ship: Malice + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonus3AF'), skill='Amarr Frigate') + + +class Effect6294(BaseEffect): + """ + shipBonusEnergyNeutOptimalAC1 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'maxRange', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect6299(BaseEffect): + """ + shipBonusEnergyNeutFalloffAC3 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAC3'), skill='Amarr Cruiser') + + +class Effect6300(BaseEffect): + """ + shipBonusEnergyNosOptimalAC1 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect6301(BaseEffect): + """ + shipBonusNosOptimalFalloffAC2 + + Used by: + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'maxRange', + src.getModifiedItemAttr('shipBonusAC2'), skill='Amarr Cruiser') + + +class Effect6305(BaseEffect): + """ + shipBonusEnergyNosFalloffAC3 + + Used by: + Ship: Vangel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusAC3'), skill='Amarr Cruiser') + + +class Effect6307(BaseEffect): + """ + shipBonusThermMissileDmgMD1 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusMD1'), skill='Minmatar Destroyer') + + +class Effect6308(BaseEffect): + """ + shipBonusEMMissileDmgMD1 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'emDamage', + src.getModifiedItemAttr('shipBonusMD1'), skill='Minmatar Destroyer') + + +class Effect6309(BaseEffect): + """ + shipBonusKineticMissileDmgMD1 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusMD1'), skill='Minmatar Destroyer') + + +class Effect6310(BaseEffect): + """ + shipBonusExplosiveMissileDmgMD1 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', src.getModifiedItemAttr('shipBonusMD1'), + skill='Minmatar Destroyer') + + +class Effect6315(BaseEffect): + """ + eliteBonusCommandDestroyerSkirmish1 + + Used by: + Ship: Bifrost + Ship: Magus + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + + +class Effect6316(BaseEffect): + """ + eliteBonusCommandDestroyerShield1 + + Used by: + Ship: Bifrost + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + + +class Effect6317(BaseEffect): + """ + eliteBonusCommandDestroyerMJFGspool2 + + Used by: + Ships from group: Command Destroyer (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Micro Jump Drive Operation'), 'duration', + src.getModifiedItemAttr('eliteBonusCommandDestroyer2'), skill='Command Destroyers') + + +class Effect6318(BaseEffect): + """ + shipBonusEMShieldResistanceMD2 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusMD2'), + skill='Minmatar Destroyer') + + +class Effect6319(BaseEffect): + """ + shipBonusKineticShieldResistanceMD2 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusMD2'), + skill='Minmatar Destroyer') + + +class Effect6320(BaseEffect): + """ + shipBonusThermalShieldResistanceMD2 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusMD2'), + skill='Minmatar Destroyer') + + +class Effect6321(BaseEffect): + """ + shipBonusExplosiveShieldResistanceMD2 + + Used by: + Ship: Bifrost + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusMD2'), + skill='Minmatar Destroyer') + + +class Effect6322(BaseEffect): + """ + scriptscanGravimetricStrengthBonusBonus + + Used by: + Charges from group: Structure ECM script (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context, *args, **kwargs): + src.boostItemAttr('scanGravimetricStrengthBonus', src.getModifiedChargeAttr('scanGravimetricStrengthBonusBonus')) + + +class Effect6323(BaseEffect): + """ + scriptscanLadarStrengthBonusBonus + + Used by: + Charges from group: Structure ECM script (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context, *args, **kwargs): + src.boostItemAttr('scanLadarStrengthBonus', src.getModifiedChargeAttr('scanLadarStrengthBonusBonus')) + + +class Effect6324(BaseEffect): + """ + scriptscanMagnetometricStrengthBonusBonus + + Used by: + Charges from group: Structure ECM script (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context, *args, **kwargs): + src.boostItemAttr('scanMagnetometricStrengthBonus', src.getModifiedChargeAttr('scanMagnetometricStrengthBonusBonus')) + + +class Effect6325(BaseEffect): + """ + scriptscanRadarStrengthBonusBonus + + Used by: + Charges from group: Structure ECM script (4 of 4) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context, *args, **kwargs): + src.boostItemAttr('scanRadarStrengthBonus', src.getModifiedChargeAttr('scanRadarStrengthBonusBonus')) + + +class Effect6326(BaseEffect): + """ + shipBonusThermalMissileDamageCD1 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusCD1'), skill='Caldari Destroyer') + + +class Effect6327(BaseEffect): + """ + shipBonusEMMissileDamageCD1 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'emDamage', + src.getModifiedItemAttr('shipBonusCD1'), skill='Caldari Destroyer') + + +class Effect6328(BaseEffect): + """ + shipBonusKineticMissileDamageCD1 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusCD1'), skill='Caldari Destroyer') + + +class Effect6329(BaseEffect): + """ + shipBonusExplosiveMissileDamageCD1 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'explosiveDamage', src.getModifiedItemAttr('shipBonusCD1'), + skill='Caldari Destroyer') + + +class Effect6330(BaseEffect): + """ + shipBonusShieldEMResistanceCD2 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusCD2'), + skill='Caldari Destroyer') + + +class Effect6331(BaseEffect): + """ + shipBonusShieldThermalResistanceCD2 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusCD2'), + skill='Caldari Destroyer') + + +class Effect6332(BaseEffect): + """ + shipBonusShieldKineticResistanceCD2 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusCD2'), + skill='Caldari Destroyer') + + +class Effect6333(BaseEffect): + """ + shipBonusShieldExplosiveResistanceCD2 + + Used by: + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusCD2'), + skill='Caldari Destroyer') + + +class Effect6334(BaseEffect): + """ + eliteBonusCommandDestroyerInfo1 + + Used by: + Ship: Pontifex + Ship: Stork + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + + +class Effect6335(BaseEffect): + """ + shipBonusKineticArmorResistanceAD2 + + Used by: + Ship: Pontifex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('shipBonusAD2'), + skill='Amarr Destroyer') + + +class Effect6336(BaseEffect): + """ + shipBonusThermalArmorResistanceAD2 + + Used by: + Ship: Pontifex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('shipBonusAD2'), + skill='Amarr Destroyer') + + +class Effect6337(BaseEffect): + """ + shipBonusEMArmorResistanceAD2 + + Used by: + Ship: Pontifex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('shipBonusAD2'), skill='Amarr Destroyer') + + +class Effect6338(BaseEffect): + """ + shipBonusExplosiveArmorResistanceAD2 + + Used by: + Ship: Pontifex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusAD2'), + skill='Amarr Destroyer') + + +class Effect6339(BaseEffect): + """ + eliteBonusCommandDestroyerArmored1 + + Used by: + Ship: Magus + Ship: Pontifex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'buffDuration', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('eliteBonusCommandDestroyer1'), skill='Command Destroyers') + + +class Effect6340(BaseEffect): + """ + shipBonusKineticArmorResistanceGD2 + + Used by: + Ship: Magus + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('shipBonusGD2'), + skill='Gallente Destroyer') + + +class Effect6341(BaseEffect): + """ + shipBonusEMArmorResistanceGD2 + + Used by: + Ship: Magus + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('shipBonusGD2'), + skill='Gallente Destroyer') + + +class Effect6342(BaseEffect): + """ + shipBonusThermalArmorResistanceGD2 + + Used by: + Ship: Magus + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('shipBonusGD2'), + skill='Gallente Destroyer') + + +class Effect6343(BaseEffect): + """ + shipBonusExplosiveArmorResistanceGD2 + + Used by: + Ship: Magus + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusGD2'), + skill='Gallente Destroyer') + + +class Effect6350(BaseEffect): + """ + shipSmallMissileKinDmgCF3 + + Used by: + Ship: Caldari Navy Hookbill + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost( + lambda mod: mod.charge.requiresSkill('Light Missiles') or mod.charge.requiresSkill('Rockets'), 'kineticDamage', + src.getModifiedItemAttr('shipBonus3CF'), skill='Caldari Frigate') + + +class Effect6351(BaseEffect): + """ + shipMissileKinDamageCC3 + + Used by: + Ship: Osprey Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusCC3'), skill='Caldari Cruiser') + + +class Effect6352(BaseEffect): + """ + roleBonusWDRange + + Used by: + Ship: Crucifier Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'falloffEffectiveness', + src.getModifiedItemAttr('roleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'maxRange', + src.getModifiedItemAttr('roleBonus')) + + +class Effect6353(BaseEffect): + """ + roleBonusWDCapCPU + + Used by: + Ship: Crucifier Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'cpu', + src.getModifiedItemAttr('roleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'capacitorNeed', + src.getModifiedItemAttr('roleBonus')) + + +class Effect6354(BaseEffect): + """ + shipBonusEwWeaponDisruptionStrengthAF2 + + Used by: + Variations of ship: Crucifier (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'trackingSpeedBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'explosionDelayBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'maxRangeBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'falloffBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'missileVelocityBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'aoeVelocityBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'aoeCloudSizeBonus', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect6355(BaseEffect): + """ + roleBonusECMCapCPU + + Used by: + Ship: Griffin Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'capacitorNeed', + src.getModifiedItemAttr('roleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'cpu', src.getModifiedItemAttr('roleBonus')) + + +class Effect6356(BaseEffect): + """ + roleBonusECMRange + + Used by: + Ship: Griffin Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'falloffEffectiveness', + src.getModifiedItemAttr('roleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'maxRange', + src.getModifiedItemAttr('roleBonus')) + + +class Effect6357(BaseEffect): + """ + shipBonusJustScramblerRangeGF2 + + Used by: + Ship: Maulus Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Navigation'), 'maxRange', + src.getModifiedItemAttr('shipBonusGF2'), skill='Gallente Frigate') + + +class Effect6358(BaseEffect): + """ + roleBonusJustScramblerStrength + + Used by: + Ship: Maulus Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Navigation'), + 'warpScrambleStrength', ship.getModifiedItemAttr('roleBonus')) + + +class Effect6359(BaseEffect): + """ + shipBonusAoeVelocityRocketsMF + + Used by: + Ship: Vigil Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), 'aoeVelocity', + src.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect6360(BaseEffect): + """ + shipRocketEMThermKinDmgMF2 + + Used by: + Ship: Vigil Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), 'emDamage', + src.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusMF2'), skill='Minmatar Frigate') + + +class Effect6361(BaseEffect): + """ + shipRocketExpDmgMF3 + + Used by: + Ship: Vigil Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonus3MF'), skill='Minmatar Frigate') + + +class Effect6362(BaseEffect): + """ + roleBonusStasisRange + + Used by: + Ship: Vigil Fleet Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'maxRange', + src.getModifiedItemAttr('roleBonus')) + + +class Effect6368(BaseEffect): + """ + shieldTransporterFalloffBonus + + Used by: + Variations of ship: Bantam (2 of 2) + Variations of ship: Burst (2 of 2) + Ship: Osprey + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Shield Booster', 'falloffEffectiveness', + src.getModifiedItemAttr('falloffBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Ancillary Remote Shield Booster', + 'falloffEffectiveness', src.getModifiedItemAttr('falloffBonus')) + + +class Effect6369(BaseEffect): + """ + shipShieldTransferFalloffMC2 + + Used by: + Ship: Scimitar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect6370(BaseEffect): + """ + shipShieldTransferFalloffCC1 + + Used by: + Ship: Basilisk + Ship: Etana + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'falloffEffectiveness', + src.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect6371(BaseEffect): + """ + shipRemoteArmorFalloffGC1 + + Used by: + Ship: Oneiros + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'falloffEffectiveness', src.getModifiedItemAttr('shipBonusGC'), + skill='Gallente Cruiser') + + +class Effect6372(BaseEffect): + """ + shipRemoteArmorFalloffAC2 + + Used by: + Ship: Guardian + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'falloffEffectiveness', src.getModifiedItemAttr('shipBonusAC2'), + skill='Amarr Cruiser') + + +class Effect6373(BaseEffect): + """ + armorRepairProjectorFalloffBonus + + Used by: + Variations of ship: Navitas (2 of 2) + Ship: Augoror + Ship: Deacon + Ship: Exequror + Ship: Inquisitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Armor Repairer', 'falloffEffectiveness', + src.getModifiedItemAttr('falloffBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Ancillary Remote Armor Repairer', + 'falloffEffectiveness', src.getModifiedItemAttr('falloffBonus')) + + +class Effect6374(BaseEffect): + """ + droneHullRepairBonusEffect + + Used by: + Ships from group: Logistics (6 of 7) + Ship: Exequror + Ship: Scythe + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == 'Logistic Drone', 'structureDamageAmount', + src.getModifiedItemAttr('droneArmorDamageAmountBonus')) + + +class Effect6377(BaseEffect): + """ + eliteBonusLogiFrigArmorRepSpeedCap1 + + Used by: + Ship: Deacon + Ship: Thalia + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'capacitorNeed', + src.getModifiedItemAttr('eliteBonusLogiFrig1'), skill='Logistics Frigates') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'duration', + src.getModifiedItemAttr('eliteBonusLogiFrig1'), skill='Logistics Frigates') + + +class Effect6378(BaseEffect): + """ + eliteBonusLogiFrigShieldRepSpeedCap1 + + Used by: + Ship: Kirin + Ship: Scalpel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'duration', + src.getModifiedItemAttr('eliteBonusLogiFrig1'), skill='Logistics Frigates') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), 'capacitorNeed', + src.getModifiedItemAttr('eliteBonusLogiFrig1'), skill='Logistics Frigates') + + +class Effect6379(BaseEffect): + """ + eliteBonusLogiFrigArmorHP2 + + Used by: + Ship: Deacon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorHP', src.getModifiedItemAttr('eliteBonusLogiFrig2'), skill='Logistics Frigates') + + +class Effect6380(BaseEffect): + """ + eliteBonusLogiFrigShieldHP2 + + Used by: + Ship: Kirin + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldCapacity', src.getModifiedItemAttr('eliteBonusLogiFrig2'), skill='Logistics Frigates') + + +class Effect6381(BaseEffect): + """ + eliteBonusLogiFrigSignature2 + + Used by: + Ship: Scalpel + Ship: Thalia + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('signatureRadius', src.getModifiedItemAttr('eliteBonusLogiFrig2'), + skill='Logistics Frigates') + + +class Effect6384(BaseEffect): + """ + overloadSelfMissileGuidanceModuleBonus + + Used by: + Variations of module: Guidance Disruptor I (6 of 6) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + for tgtAttr in ( + 'aoeCloudSizeBonus', + 'explosionDelayBonus', + 'missileVelocityBonus', + 'aoeVelocityBonus' + ): + module.boostItemAttr(tgtAttr, module.getModifiedItemAttr('overloadTrackingModuleStrengthBonus')) + + +class Effect6385(BaseEffect): + """ + ignoreCloakVelocityPenalty + + Used by: + Ship: Endurance + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemForce(lambda mod: mod.item.group.name == 'Cloaking Device', + 'maxVelocityModifier', src.getModifiedItemAttr('velocityPenaltyReduction')) + + +class Effect6386(BaseEffect): + """ + ewSkillGuidanceDisruptionBonus + + Used by: + Modules named like: Tracking Diagnostic Subroutines (8 of 8) + Skill: Weapon Destabilization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + level = src.level if 'skill' in context else 1 + for attr in ( + 'explosionDelayBonus', + 'aoeVelocityBonus', + 'aoeCloudSizeBonus', + 'missileVelocityBonus' + ): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), + attr, src.getModifiedItemAttr('scanSkillEwStrengthBonus') * level) + + +class Effect6395(BaseEffect): + """ + shipBonusEwWeaponDisruptionStrengthAC1 + + Used by: + Variations of ship: Arbitrator (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'missileVelocityBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'aoeVelocityBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'maxRangeBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'explosionDelayBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'aoeCloudSizeBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'trackingSpeedBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Weapon Disruption'), 'falloffBonus', + src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect6396(BaseEffect): + """ + skillStructureMissileDamageBonus + + Used by: + Skill: Structure Missile Systems + """ + + type = 'passive', 'structure' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure Anti-Capital Missile', 'Structure Anti-Subcapital Missile', 'Structure Guided Bomb') + for damageType in ('em', 'thermal', 'explosive', 'kinetic'): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, + '%sDamage' % damageType, src.getModifiedItemAttr('damageMultiplierBonus'), + skill='Structure Missile Systems') + + +class Effect6400(BaseEffect): + """ + skillStructureElectronicSystemsCapNeedBonus + + Used by: + Skill: Structure Electronic Systems + """ + + type = 'passive', 'structure' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure Warp Scrambler', 'Structure Disruption Battery', 'Structure Stasis Webifier') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'capacitorNeed', src.getModifiedItemAttr('capNeedBonus'), + skill='Structure Electronic Systems') + + +class Effect6401(BaseEffect): + """ + skillStructureEngineeringSystemsCapNeedBonus + + Used by: + Skill: Structure Engineering Systems + """ + + type = 'passive', 'structure' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure Energy Neutralizer', 'Structure Area Denial Module') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'capacitorNeed', src.getModifiedItemAttr('capNeedBonus'), + skill='Structure Engineering Systems') + + +class Effect6402(BaseEffect): + """ + structureRigAoeVelocityBonusSingleTargetMissiles + + Used by: + Structure Modules named like: Standup Set Missile (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure Anti-Subcapital Missile', 'Structure Anti-Capital Missile') + + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, + 'aoeVelocity', src.getModifiedItemAttr('structureRigMissileExploVeloBonus'), + stackingPenalties=True) + + +class Effect6403(BaseEffect): + """ + structureRigVelocityBonusSingleTargetMissiles + + Used by: + Structure Modules named like: Standup Set Missile (6 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure Anti-Subcapital Missile', 'Structure Anti-Capital Missile') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, + 'maxVelocity', src.getModifiedItemAttr('structureRigMissileVelocityBonus'), + stackingPenalties=True) + + +class Effect6404(BaseEffect): + """ + structureRigNeutralizerMaxRangeFalloffEffectiveness + + Used by: + Structure Modules from group: Structure Combat Rig XL - Energy Neutralizer and EW (2 of 2) + Structure Modules named like: Standup Set Energy Neutralizer (4 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Energy Neutralizer', + 'maxRange', src.getModifiedItemAttr('structureRigEwarOptimalBonus'), + stackingPenalties=True) + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Energy Neutralizer', + 'falloffEffectiveness', src.getModifiedItemAttr('structureRigEwarFalloffBonus'), + stackingPenalties=True) + + +class Effect6405(BaseEffect): + """ + structureRigNeutralizerCapacitorNeed + + Used by: + Structure Modules from group: Structure Combat Rig XL - Energy Neutralizer and EW (2 of 2) + Structure Modules named like: Standup Set Energy Neutralizer (4 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Energy Neutralizer', + 'capacitorNeed', src.getModifiedItemAttr('structureRigEwarCapUseBonus'), + stackingPenalties=True) + + +class Effect6406(BaseEffect): + """ + structureRigEWMaxRangeFalloff + + Used by: + Structure Modules from group: Structure Combat Rig M - EW projection (2 of 2) + Structure Modules named like: Standup Set EW (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure ECM Battery', 'Structure Disruption Battery') + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'falloff', src.getModifiedItemAttr('structureRigEwarFalloffBonus'), + stackingPenalties=True) + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'maxRange', src.getModifiedItemAttr('structureRigEwarOptimalBonus'), + stackingPenalties=True) + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'falloffEffectiveness', src.getModifiedItemAttr('structureRigEwarFalloffBonus'), + stackingPenalties=True) + + +class Effect6407(BaseEffect): + """ + structureRigEWCapacitorNeed + + Used by: + Structure Modules from group: Structure Combat Rig M - EW Cap Reduction (2 of 2) + Structure Modules named like: Standup Set EW (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure ECM Battery', 'Structure Disruption Battery') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'capacitorNeed', src.getModifiedItemAttr('structureRigEwarCapUseBonus'), + stackingPenalties=True) + + +class Effect6408(BaseEffect): + """ + structureRigMaxTargets + + Used by: + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + Structure Modules named like: Standup Set Target (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.extraAttributes.increase('maxTargetsLockedFromSkills', src.getModifiedItemAttr('structureRigMaxTargetBonus')) + + +class Effect6409(BaseEffect): + """ + structureRigSensorResolution + + Used by: + Structure Modules from group: Structure Combat Rig L - Max Targets and Sensor Boosting (2 of 2) + Structure Modules from group: Structure Combat Rig M - Boosted Sensors (2 of 2) + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanResolution', src.getModifiedItemAttr('structureRigScanResBonus'), + stackingPenalties=True) + + +class Effect6410(BaseEffect): + """ + structureRigExplosionRadiusBonusAoEMissiles + + Used by: + Structure Modules from group: Structure Combat Rig L - AoE Launcher Application and Projection (2 of 2) + Structure Modules from group: Structure Combat Rig XL - Missile and AoE Missile (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Structure Guided Bomb', + 'aoeCloudSize', src.getModifiedItemAttr('structureRigMissileExplosionRadiusBonus'), + stackingPenalties=True) + + +class Effect6411(BaseEffect): + """ + structureRigVelocityBonusAoeMissiles + + Used by: + Structure Modules from group: Structure Combat Rig L - AoE Launcher Application and Projection (2 of 2) + Structure Modules from group: Structure Combat Rig XL - Missile and AoE Missile (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == 'Structure Guided Bomb', + 'maxVelocity', src.getModifiedItemAttr('structureRigMissileVelocityBonus'), + stackingPenalties=True) + + +class Effect6412(BaseEffect): + """ + structureRigPDBmaxRange + + Used by: + Structure Modules from group: Structure Combat Rig L - Point Defense Battery Application and Projection (2 of 2) + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Area Denial Module', + 'empFieldRange', src.getModifiedItemAttr('structureRigPDRangeBonus'), + stackingPenalties=True) + + +class Effect6413(BaseEffect): + """ + structureRigPDBCapacitorNeed + + Used by: + Structure Modules from group: Structure Combat Rig L - Point Defense Battery Application and Projection (2 of 2) + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Area Denial Module', + 'capacitorNeed', src.getModifiedItemAttr('structureRigPDCapUseBonus'), + stackingPenalties=True) + + +class Effect6417(BaseEffect): + """ + structureRigDoomsdayDamageLoss + + Used by: + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == 'Structure Doomsday Weapon', + 'lightningWeaponDamageLossTarget', + src.getModifiedItemAttr('structureRigDoomsdayDamageLossTargetBonus')) + + +class Effect6422(BaseEffect): + """ + remoteSensorDampFalloff + + Used by: + Modules from group: Sensor Dampener (6 of 6) + Starbases from group: Sensor Dampening Battery (3 of 3) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True, *args, **kwargs) + + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6423(BaseEffect): + """ + shipModuleGuidanceDisruptor + + Used by: + Variations of module: Guidance Disruptor I (6 of 6) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + 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, module.getModifiedItemAttr(srcAttr), + stackingPenalties=True, *args, **kwargs) + + +class Effect6424(BaseEffect): + """ + shipModuleTrackingDisruptor + + Used by: + Variations of module: Tracking Disruptor I (6 of 6) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' in context: + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6425(BaseEffect): + """ + remoteTargetPaintFalloff + + Used by: + Modules from group: Target Painter (8 of 8) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, *args, **kwargs): + if 'projected' in context: + fit.ship.boostItemAttr('signatureRadius', container.getModifiedItemAttr('signatureRadiusBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6426(BaseEffect): + """ + remoteWebifierFalloff + + Used by: + Modules from group: Stasis Grappler (7 of 7) + Modules from group: Stasis Web (19 of 19) + Starbases from group: Stasis Webification Battery (3 of 3) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('speedFactor'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6427(BaseEffect): + """ + remoteSensorBoostFalloff + + Used by: + Modules from group: Remote Sensor Booster (8 of 8) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' not in context: + return + + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True) + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True) + + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + fit.ship.boostItemAttr( + 'scan{}Strength'.format(scanType), + module.getModifiedItemAttr('scan{}StrengthPercent'.format(scanType)), + stackingPenalties=True + ) + + +class Effect6428(BaseEffect): + """ + shipModuleRemoteTrackingComputer + + Used by: + Modules from group: Remote Tracking Computer (8 of 8) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' in context: + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True, **kwargs) + + +class Effect6431(BaseEffect): + """ + fighterAbilityMissiles + + Used by: + Items from category: Fighter (48 of 82) + Fighters from group: Light Fighter (32 of 32) + """ + + displayName = 'Missile Attack' + hasCharges = True + prefix = 'fighterAbilityMissiles' + type = 'active' + + +class Effect6434(BaseEffect): + """ + fighterAbilityEnergyNeutralizer + + Used by: + Fighters named like: Cenobite (4 of 4) + """ + + displayName = 'Energy Neutralizer' + grouped = True + prefix = 'fighterAbilityEnergyNeutralizer' + type = 'active', 'projected' + + @classmethod + def handler(cls, fit, src, context, **kwargs): + if 'projected' in context: + amount = src.getModifiedItemAttr('{}Amount'.format(cls.prefix)) * src.amountActive + time = src.getModifiedItemAttr('{}Duration'.format(cls.prefix)) + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.addDrain(src, time, amount, 0) + + +class Effect6435(BaseEffect): + """ + fighterAbilityStasisWebifier + + Used by: + Fighters named like: Dromi (4 of 4) + """ + + displayName = 'Stasis Webifier' + grouped = True + prefix = 'fighterAbilityStasisWebifier' + type = 'active', 'projected' + + @classmethod + def handler(cls, fit, src, context): + if 'projected' not in context: + return + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('{}SpeedPenalty'.format(cls.prefix)) * src.amountActive, + stackingPenalties=True) + + +class Effect6436(BaseEffect): + """ + fighterAbilityWarpDisruption + + Used by: + Fighters named like: Siren (4 of 4) + """ + + displayName = 'Warp Disruption' + grouped = True + prefix = 'fighterAbilityWarpDisruption' + type = 'active', 'projected' + + @classmethod + def handler(cls, fit, src, context): + if 'projected' not in context: + return + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('{}PointStrength'.format(cls.prefix)) * src.amountActive) + + +class Effect6437(BaseEffect): + """ + fighterAbilityECM + + Used by: + Fighters named like: Scarab (4 of 4) + """ + + displayName = 'ECM' + grouped = True + prefix = 'fighterAbilityECM' + type = 'projected', 'active' + + @classmethod + def handler(cls, fit, module, context, **kwargs): + if 'projected' not in context: + return + # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) + strModifier = 1 - (module.getModifiedItemAttr('{}Strength{}'.format(cls.prefix, fit.scanType)) * module.amountActive) / fit.scanStrength + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.ecmProjectedStr *= strModifier + + +class Effect6439(BaseEffect): + """ + fighterAbilityEvasiveManeuvers + + Used by: + Fighters from group: Light Fighter (16 of 32) + """ + + displayName = 'Evasive Maneuvers' + grouped = True + prefix = 'fighterAbilityEvasiveManeuvers' + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, container, context): + container.boostItemAttr('maxVelocity', + container.getModifiedItemAttr('fighterAbilityEvasiveManeuversSpeedBonus')) + container.boostItemAttr('signatureRadius', + container.getModifiedItemAttr('fighterAbilityEvasiveManeuversSignatureRadiusBonus'), + stackingPenalties=True) + + # These may not have stacking penalties, but there's nothing else that affects the attributes yet to check. + container.multiplyItemAttr('shieldEmDamageResonance', + container.getModifiedItemAttr('fighterAbilityEvasiveManeuversEmResonance'), + stackingPenalties=True) + container.multiplyItemAttr('shieldThermalDamageResonance', + container.getModifiedItemAttr('fighterAbilityEvasiveManeuversThermResonance'), + stackingPenalties=True) + container.multiplyItemAttr('shieldKineticDamageResonance', + container.getModifiedItemAttr('fighterAbilityEvasiveManeuversKinResonance'), + stackingPenalties=True) + container.multiplyItemAttr('shieldExplosiveDamageResonance', + container.getModifiedItemAttr('fighterAbilityEvasiveManeuversExpResonance'), + stackingPenalties=True) + + +class Effect6441(BaseEffect): + """ + fighterAbilityMicroWarpDrive + + Used by: + Items from category: Fighter (48 of 82) + """ + + displayName = 'Microwarpdrive' + grouped = True + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + module.boostItemAttr('maxVelocity', module.getModifiedItemAttr('fighterAbilityMicroWarpDriveSpeedBonus'), + stackingPenalties=True) + module.boostItemAttr('signatureRadius', + module.getModifiedItemAttr('fighterAbilityMicroWarpDriveSignatureRadiusBonus'), + stackingPenalties=True) + + +class Effect6443(BaseEffect): + """ + pointDefense + + Used by: + Structure Modules from group: Structure Area Denial Module (2 of 2) + """ + + type = 'active' + + +class Effect6447(BaseEffect): + """ + lightningWeapon + + Used by: + Structure Module: Standup Arcing Vorton Projector I + """ + + type = 'active' + + +class Effect6448(BaseEffect): + """ + structureMissileGuidanceEnhancer + + Used by: + Variations of structure module: Standup Missile Guidance Enhancer I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + missileGroups = ('Structure Anti-Capital Missile', 'Structure Anti-Subcapital Missile') + for srcAttr, tgtAttr in ( + ('aoeCloudSizeBonus', 'aoeCloudSize'), + ('aoeVelocityBonus', 'aoeVelocity'), + ('missileVelocityBonus', 'maxVelocity'), + ('explosionDelayBonus', 'explosionDelay'), + ): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in missileGroups, + tgtAttr, container.getModifiedItemAttr(srcAttr), + stackingPenalties=True) + + +class Effect6449(BaseEffect): + """ + structureBallisticControlSystem + + Used by: + Variations of structure module: Standup Ballistic Control System I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + missileGroups = ('Structure Anti-Capital Missile', 'Structure Anti-Subcapital Missile') + + for dmgType in ('em', 'kinetic', 'explosive', 'thermal'): + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.group.name in missileGroups, + '%sDamage' % dmgType, + module.getModifiedItemAttr('missileDamageMultiplierBonus'), + stackingPenalties=True) + + launcherGroups = ('Structure XL Missile Launcher', 'Structure Multirole Missile Launcher') + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name in launcherGroups, + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect6465(BaseEffect): + """ + fighterAbilityAttackM + + Used by: + Items from category: Fighter (50 of 82) + Fighters from group: Heavy Fighter (34 of 34) + """ + + displayName = 'Turret Attack' + prefix = 'fighterAbilityAttackMissile' + type = 'active' + + +class Effect6470(BaseEffect): + """ + remoteECMFalloff + + Used by: + Modules from group: ECM (39 of 39) + Starbases from group: Electronic Warfare Battery (12 of 12) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' in context: + # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) + strModifier = 1 - module.getModifiedItemAttr('scan{0}StrengthBonus'.format(fit.scanType)) / fit.scanStrength + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.ecmProjectedStr *= strModifier + + +class Effect6472(BaseEffect): + """ + doomsdayBeamDOT + + Used by: + Modules named like: Lance (4 of 4) + """ + + type = 'active' + + +class Effect6473(BaseEffect): + """ + doomsdayConeDOT + + Used by: + Module: Bosonic Field Generator + """ + + type = 'active' + + +class Effect6474(BaseEffect): + """ + doomsdayHOG + + Used by: + Module: Gravitational Transportation Field Oscillator + """ + + type = 'active' + + +class Effect6475(BaseEffect): + """ + structureRigDoomsdayTargetAmountBonus + + Used by: + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == 'Structure Doomsday Weapon', + 'lightningWeaponTargetAmount', + src.getModifiedItemAttr('structureRigDoomsdayTargetAmountBonus')) + + +class Effect6476(BaseEffect): + """ + doomsdayAOEWeb + + Used by: + Module: Stasis Webification Burst Projector + Structure Module: Standup Stasis Webification Burst Projector + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('speedFactor'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6477(BaseEffect): + """ + doomsdayAOENeut + + Used by: + Module: Energy Neutralization Burst Projector + Structure Module: Standup Energy Neutralization Burst Projector + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, src, context, **kwargs): + if 'projected' in context and ((hasattr(src, 'state') and src.state >= FittingModuleState.ACTIVE) or + hasattr(src, 'amountActive')): + amount = src.getModifiedItemAttr('energyNeutralizerAmount') + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + time = src.getModifiedItemAttr('duration') + + fit.addDrain(src, time, amount, 0) + + +class Effect6478(BaseEffect): + """ + doomsdayAOEPaint + + Used by: + Module: Target Illumination Burst Projector + Structure Module: Standup Target Illumination Burst Projector + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, *args, **kwargs): + if 'projected' in context: + fit.ship.boostItemAttr('signatureRadius', container.getModifiedItemAttr('signatureRadiusBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6479(BaseEffect): + """ + doomsdayAOETrack + + Used by: + Module: Weapon Disruption Burst Projector + Structure Module: Standup Weapon Disruption Burst Projector + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + 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, module.getModifiedItemAttr(srcAttr), + stackingPenalties=True, *args, **kwargs) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6481(BaseEffect): + """ + doomsdayAOEDamp + + Used by: + Module: Sensor Dampening Burst Projector + Structure Module: Standup Sensor Dampening Burst Projector + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True, *args, **kwargs) + + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6482(BaseEffect): + """ + doomsdayAOEBubble + + Used by: + Module: Warp Disruption Burst Projector + Structure Module: Standup Warp Disruption Burst Projector + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + return + + +class Effect6484(BaseEffect): + """ + emergencyHullEnergizer + + Used by: + Variations of module: Capital Emergency Hull Energizer I (5 of 5) + """ + + runtime = 'late' + type = 'active' + + @staticmethod + def handler(fit, src, context): + for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): + fit.ship.multiplyItemAttr('{}DamageResonance'.format(dmgType), + src.getModifiedItemAttr('hull{}DamageResonance'.format(dmgType.title())), + stackingPenalties=True, penaltyGroup='postMul') + + +class Effect6485(BaseEffect): + """ + fighterAbilityLaunchBomb + + Used by: + Fighters from group: Heavy Fighter (16 of 34) + """ + + displayName = 'Bomb' + hasCharges = True + prefix = 'fighterAbilityLaunchBomb' + type = 'active' + + +class Effect6487(BaseEffect): + """ + modifyEnergyWarfareResistance + + Used by: + Modules from group: Capacitor Battery (30 of 30) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('energyWarfareResistance', + module.getModifiedItemAttr('energyWarfareResistanceBonus'), + stackingPenalties=True) + + +class Effect6488(BaseEffect): + """ + scriptSensorBoosterSensorStrengthBonusBonus + + Used by: + Charges from group: Sensor Booster Script (3 of 3) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + for scanType in ('Gravimetric', 'Magnetometric', 'Radar', 'Ladar'): + module.boostItemAttr('scan{}StrengthPercent'.format(scanType), + module.getModifiedChargeAttr('sensorStrengthBonusBonus')) + + +class Effect6501(BaseEffect): + """ + shipBonusDreadnoughtA1DamageBonus + + Used by: + Ship: Revelation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusDreadnoughtA1'), skill='Amarr Dreadnought') + + +class Effect6502(BaseEffect): + """ + shipBonusDreadnoughtA2ArmorResists + + Used by: + Ship: Revelation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtA2'), + skill='Amarr Dreadnought') + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtA2'), + skill='Amarr Dreadnought') + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtA2'), + skill='Amarr Dreadnought') + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtA2'), + skill='Amarr Dreadnought') + + +class Effect6503(BaseEffect): + """ + shipBonusDreadnoughtA3CapNeed + + Used by: + Ship: Revelation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusDreadnoughtA3'), skill='Amarr Dreadnought') + + +class Effect6504(BaseEffect): + """ + shipBonusDreadnoughtC1DamageBonus + + Used by: + Ship: Phoenix + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'emDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtC1'), skill='Caldari Dreadnought') + + +class Effect6505(BaseEffect): + """ + shipBonusDreadnoughtC2ShieldResists + + Used by: + Variations of ship: Phoenix (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtC2'), + skill='Caldari Dreadnought') + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtC2'), + skill='Caldari Dreadnought') + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtC2'), + skill='Caldari Dreadnought') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusDreadnoughtC2'), + skill='Caldari Dreadnought') + + +class Effect6506(BaseEffect): + """ + shipBonusDreadnoughtG1DamageBonus + + Used by: + Ship: Moros + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + + +class Effect6507(BaseEffect): + """ + shipBonusDreadnoughtG2ROFBonus + + Used by: + Variations of ship: Moros (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), 'speed', + src.getModifiedItemAttr('shipBonusDreadnoughtG2'), skill='Gallente Dreadnought') + + +class Effect6508(BaseEffect): + """ + shipBonusDreadnoughtG3RepairTime + + Used by: + Ship: Moros + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), 'duration', + src.getModifiedItemAttr('shipBonusDreadnoughtG3'), skill='Gallente Dreadnought') + + +class Effect6509(BaseEffect): + """ + shipBonusDreadnoughtM1DamageBonus + + Used by: + Ship: Naglfar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Projectile Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusDreadnoughtM1'), skill='Minmatar Dreadnought') + + +class Effect6510(BaseEffect): + """ + shipBonusDreadnoughtM2ROFBonus + + Used by: + Ship: Naglfar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Projectile Turret'), 'speed', + src.getModifiedItemAttr('shipBonusDreadnoughtM2'), skill='Minmatar Dreadnought') + + +class Effect6511(BaseEffect): + """ + shipBonusDreadnoughtM3RepairTime + + Used by: + Ship: Naglfar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), 'duration', + src.getModifiedItemAttr('shipBonusDreadnoughtM2'), skill='Minmatar Dreadnought') + + +class Effect6513(BaseEffect): + """ + doomsdayAOEECM + + Used by: + Module: ECM Jammer Burst Projector + Structure Module: Standup ECM Jammer Burst Projector + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' in context: + # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) + strModifier = 1 - module.getModifiedItemAttr('scan{0}StrengthBonus'.format(fit.scanType)) / fit.scanStrength + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.ecmProjectedStr *= strModifier + + +class Effect6526(BaseEffect): + """ + shipBonusForceAuxiliaryA1RemoteRepairAndCapAmount + + Used by: + Ship: Apostle + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capacitor Emission Systems') or + mod.item.requiresSkill('Capital Capacitor Emission Systems'), + 'powerTransferAmount', src.getModifiedItemAttr('shipBonusForceAuxiliaryA1'), + skill='Amarr Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems') or + mod.item.requiresSkill('Capital Remote Armor Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusForceAuxiliaryA1'), + skill='Amarr Carrier') + + +class Effect6527(BaseEffect): + """ + shipBonusForceAuxiliaryA2ArmorResists + + Used by: + Ship: Apostle + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryA2'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryA2'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryA2'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryA2'), + skill='Amarr Carrier') + + +class Effect6533(BaseEffect): + """ + shipBonusForceAuxiliaryA4WarfareLinksBonus + + Used by: + Ship: Apostle + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command') or + mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command') or + mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command') or + mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command') or + mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusForceAuxiliaryA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command') or + mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryA4'), skill='Amarr Carrier') + + +class Effect6534(BaseEffect): + """ + shipBonusForceAuxiliaryM4WarfareLinksBonus + + Used by: + Ship: Lif + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusForceAuxiliaryM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryM4'), skill='Minmatar Carrier') + + +class Effect6535(BaseEffect): + """ + shipBonusForceAuxiliaryG4WarfareLinksBonus + + Used by: + Ship: Ninazu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusForceAuxiliaryG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryG4'), skill='Gallente Carrier') + + +class Effect6536(BaseEffect): + """ + shipBonusForceAuxiliaryC4WarfareLinksBonus + + Used by: + Ship: Minokawa + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusForceAuxiliaryC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusForceAuxiliaryC4'), skill='Caldari Carrier') + + +class Effect6537(BaseEffect): + """ + shipBonusRole1CommandBurstCPUBonus + + Used by: + Ships from group: Force Auxiliary (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), 'cpu', + src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6545(BaseEffect): + """ + shipBonusForceAuxiliaryC1RemoteBoostAndCapAmount + + Used by: + Ship: Minokawa + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + if src.getModifiedItemAttr('shipBonusForceAuxiliaryC1') is None: + return # See GH Issue 1321 + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capacitor Emission Systems') or + mod.item.requiresSkill('Capital Capacitor Emission Systems'), + 'powerTransferAmount', src.getModifiedItemAttr('shipBonusForceAuxiliaryC1'), + skill='Caldari Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') or + mod.item.requiresSkill('Capital Shield Emission Systems'), + 'shieldBonus', src.getModifiedItemAttr('shipBonusForceAuxiliaryC1'), + skill='Caldari Carrier') + + +class Effect6546(BaseEffect): + """ + shipBonusForceAuxiliaryC2ShieldResists + + Used by: + Variations of ship: Minokawa (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryC2'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryC2'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryC2'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusForceAuxiliaryC2'), + skill='Caldari Carrier') + + +class Effect6548(BaseEffect): + """ + shipBonusForceAuxiliaryG1RemoteCycleTime + + Used by: + Ship: Ninazu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') or + mod.item.requiresSkill('Capital Shield Emission Systems'), + 'duration', src.getModifiedItemAttr('shipBonusForceAuxiliaryG1'), + skill='Gallente Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems') or + mod.item.requiresSkill('Capital Remote Armor Repair Systems'), + 'duration', src.getModifiedItemAttr('shipBonusForceAuxiliaryG1'), + skill='Gallente Carrier') + + +class Effect6549(BaseEffect): + """ + shipBonusForceAuxiliaryG2LocalRepairAmount + + Used by: + Ship: Ninazu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), 'armorDamageAmount', + src.getModifiedItemAttr('shipBonusForceAuxiliaryG2'), skill='Gallente Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), 'armorDamageAmount', + src.getModifiedItemAttr('shipBonusForceAuxiliaryG2'), skill='Gallente Carrier') + + +class Effect6551(BaseEffect): + """ + shipBonusForceAuxiliaryM1RemoteDuration + + Used by: + Ship: Lif + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') or + mod.item.requiresSkill('Capital Shield Emission Systems'), + 'duration', src.getModifiedItemAttr('shipBonusForceAuxiliaryM1'), + skill='Minmatar Carrier') + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems') or + mod.item.requiresSkill('Capital Remote Armor Repair Systems'), + 'duration', src.getModifiedItemAttr('shipBonusForceAuxiliaryM1'), + skill='Minmatar Carrier') + + +class Effect6552(BaseEffect): + """ + shipBonusForceAuxiliaryM2LocalBoostAmount + + Used by: + Ship: Lif + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), 'shieldBonus', + src.getModifiedItemAttr('shipBonusForceAuxiliaryM2'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), 'shieldBonus', + src.getModifiedItemAttr('shipBonusForceAuxiliaryM2'), skill='Minmatar Carrier') + + +class Effect6555(BaseEffect): + """ + moduleBonusDroneNavigationComputer + + Used by: + Modules from group: Drone Navigation Computer (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'maxVelocity', + src.getModifiedItemAttr('speedFactor'), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxVelocity', + src.getModifiedItemAttr('speedFactor'), stackingPenalties=True) + + +class Effect6556(BaseEffect): + """ + moduleBonusDroneDamageAmplifier + + Used by: + Modules from group: Drone Damage Modules (11 of 11) + Modules named like: C3 'Hivaa Saitsuo' Ballistic Control System (2 of 2) + Module: Abyssal Ballistic Control System + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('droneDamageBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('droneDamageBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('droneDamageBonus'), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'damageMultiplier', + src.getModifiedItemAttr('droneDamageBonus'), stackingPenalties=True) + + +class Effect6557(BaseEffect): + """ + moduleBonusOmnidirectionalTrackingLink + + Used by: + Modules from group: Drone Tracking Modules (10 of 10) + """ + + type = 'active' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretRangeFalloff', src.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesExplosionVelocity', + src.getModifiedItemAttr('aoeVelocityBonus'), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'trackingSpeed', + src.getModifiedItemAttr('trackingSpeedBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileExplosionRadius', + src.getModifiedItemAttr('aoeCloudSizeBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretTrackingSpeed', + src.getModifiedItemAttr('trackingSpeedBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesExplosionRadius', + src.getModifiedItemAttr('aoeCloudSizeBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityMissilesRange', + src.getModifiedItemAttr('maxRangeBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileRangeOptimal', src.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'falloff', + src.getModifiedItemAttr('falloffBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileExplosionVelocity', + src.getModifiedItemAttr('aoeVelocityBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileRangeFalloff', src.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxRange', + src.getModifiedItemAttr('maxRangeBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretRangeOptimal', src.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + + +class Effect6558(BaseEffect): + """ + moduleBonusOmnidirectionalTrackingLinkOverload + + Used by: + Modules from group: Drone Tracking Modules (10 of 10) + """ + + type = 'overheat' + + @staticmethod + def handler(fit, module, context): + overloadBonus = module.getModifiedItemAttr('overloadTrackingModuleStrengthBonus') + module.boostItemAttr('maxRangeBonus', overloadBonus) + module.boostItemAttr('falloffBonus', overloadBonus) + module.boostItemAttr('trackingSpeedBonus', overloadBonus) + module.boostItemAttr('aoeCloudSizeBonus', overloadBonus) + module.boostItemAttr('aoeVelocityBonus', overloadBonus) + + +class Effect6559(BaseEffect): + """ + moduleBonusOmnidirectionalTrackingEnhancer + + Used by: + Modules from group: Drone Tracking Enhancer (10 of 10) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileExplosionRadius', + src.getModifiedItemAttr('aoeCloudSizeBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileRangeOptimal', src.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretRangeFalloff', src.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesExplosionRadius', + src.getModifiedItemAttr('aoeCloudSizeBonus'), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'falloff', + src.getModifiedItemAttr('falloffBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileRangeFalloff', src.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretTrackingSpeed', + src.getModifiedItemAttr('trackingSpeedBonus'), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxRange', + src.getModifiedItemAttr('maxRangeBonus'), stackingPenalties=True) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'trackingSpeed', + src.getModifiedItemAttr('trackingSpeedBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretRangeOptimal', src.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesExplosionVelocity', + src.getModifiedItemAttr('aoeVelocityBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileExplosionVelocity', + src.getModifiedItemAttr('aoeVelocityBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityMissilesRange', + src.getModifiedItemAttr('maxRangeBonus'), stackingPenalties=True) + + +class Effect6560(BaseEffect): + """ + skillBonusFighters + + Used by: + Skill: Fighters + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6561(BaseEffect): + """ + skillBonusLightFighters + + Used by: + Skill: Light Fighters + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Light Fighters'), 'maxVelocity', + src.getModifiedItemAttr('maxVelocityBonus') * lvl) + + +class Effect6562(BaseEffect): + """ + skillBonusSupportFightersShield + + Used by: + Skill: Support Fighters + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('shieldBonus') * lvl) + + +class Effect6563(BaseEffect): + """ + skillBonusHeavyFighters + + Used by: + Skill: Heavy Fighters + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Heavy Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Heavy Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Heavy Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6565(BaseEffect): + """ + citadelRigBonus + + Used by: + Structures from group: Citadel (9 of 9) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context): + + for attr in [ + 'structureRigDoomsdayDamageLossTargetBonus', + 'structureRigScanResBonus', + 'structureRigPDRangeBonus', + 'structureRigPDCapUseBonus', + 'structureRigMissileExploVeloBonus', + 'structureRigMissileVelocityBonus', + 'structureRigEwarOptimalBonus', + 'structureRigEwarFalloffBonus', + 'structureRigEwarCapUseBonus', + 'structureRigMissileExplosionRadiusBonus' + ]: + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Jury Rigging'), + attr, src.getModifiedItemAttr('structureRoleBonus')) + + +class Effect6566(BaseEffect): + """ + moduleBonusFighterSupportUnit + + Used by: + Modules from group: Fighter Support Unit (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('fighterBonusShieldCapacityPercent')) + fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Fighters'), 'maxVelocity', + src.getModifiedItemAttr('fighterBonusVelocityPercent'), stackingPenalties=True, penaltyGroup='postMul') + fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDuration', + src.getModifiedItemAttr('fighterBonusROFPercent'), stackingPenalties=True, penaltyGroup='postMul') + fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityAttackTurretDuration', + src.getModifiedItemAttr('fighterBonusROFPercent'), stackingPenalties=True, penaltyGroup='postMul') + fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityMissilesDuration', + src.getModifiedItemAttr('fighterBonusROFPercent'), stackingPenalties=True, penaltyGroup='postMul') + fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldRechargeRate', + src.getModifiedItemAttr('fighterBonusShieldRechargePercent')) + + +class Effect6567(BaseEffect): + """ + moduleBonusNetworkedSensorArray + + Used by: + Module: Networked Sensor Array + """ + + type = 'active' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('scanResolution', src.getModifiedItemAttr('scanResolutionBonus'), stackingPenalties=True) + + for scanType in ('Magnetometric', 'Ladar', 'Gravimetric', 'Radar'): + attr = 'scan{}Strength'.format(scanType) + bonus = src.getModifiedItemAttr('scan{}StrengthPercent'.format(scanType)) + fit.ship.boostItemAttr(attr, bonus, stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), attr, bonus, + stackingPenalties=True) + + # EW cap need increase + groups = [ + 'Burst Jammer', + 'Weapon Disruptor', + 'ECM', + 'Stasis Grappler', + 'Sensor Dampener', + 'Target Painter'] + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups or + mod.item.requiresSkill('Propulsion Jamming'), + 'capacitorNeed', src.getModifiedItemAttr('ewCapacitorNeedBonus')) + + +class Effect6570(BaseEffect): + """ + skillBonusFighterHangarManagement + + Used by: + Skill: Fighter Hangar Management + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.ship.boostItemAttr('fighterCapacity', src.getModifiedItemAttr('skillBonusFighterHangarSize') * lvl) + + +class Effect6571(BaseEffect): + """ + skillBonusCapitalAutocannonSpecialization + + Used by: + Skill: Capital Autocannon Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Autocannon Specialization'), + 'damageMultiplier', src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6572(BaseEffect): + """ + skillBonusCapitalArtillerySpecialization + + Used by: + Skill: Capital Artillery Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Artillery Specialization'), + 'damageMultiplier', src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6573(BaseEffect): + """ + skillBonusCapitalBlasterSpecialization + + Used by: + Skill: Capital Blaster Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Blaster Specialization'), + 'damageMultiplier', src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6574(BaseEffect): + """ + skillBonusCapitalRailgunSpecialization + + Used by: + Skill: Capital Railgun Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Railgun Specialization'), + 'damageMultiplier', src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6575(BaseEffect): + """ + skillBonusCapitalPulseLaserSpecialization + + Used by: + Skill: Capital Pulse Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Pulse Laser Specialization'), + 'damageMultiplier', src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6576(BaseEffect): + """ + skillBonusCapitalBeamLaserSpecialization + + Used by: + Skill: Capital Beam Laser Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Beam Laser Specialization'), + 'damageMultiplier', src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + + +class Effect6577(BaseEffect): + """ + skillBonusXLCruiseMissileSpecialization + + Used by: + Skill: XL Cruise Missile Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missile Specialization'), 'speed', + src.getModifiedItemAttr('rofBonus') * lvl) + + +class Effect6578(BaseEffect): + """ + skillBonusXLTorpedoSpecialization + + Used by: + Skill: XL Torpedo Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('XL Torpedo Specialization'), 'speed', + src.getModifiedItemAttr('rofBonus') * lvl) + + +class Effect6580(BaseEffect): + """ + shipBonusRole2LogisticDroneRepAmountBonus + + Used by: + Ships from group: Force Auxiliary (5 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), 'structureDamageAmount', + src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), 'armorDamageAmount', + src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), 'shieldBonus', + src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect6581(BaseEffect): + """ + moduleBonusTriageModule + + Used by: + Variations of module: Triage Module I (2 of 2) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, src, context): + # Remote effect bonuses (duration / amount / range / fallout) + for skill, amtAttr, stack in ( + ('Capital Remote Armor Repair Systems', 'armorDamageAmount', True), + ('Capital Shield Emission Systems', 'shieldBonus', True), + ('Capital Capacitor Emission Systems', 'powerTransferAmount', False), + ('Capital Remote Hull Repair Systems', 'structureDamageAmount', False)): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), 'duration', + src.getModifiedItemAttr('siegeRemoteLogisticsDurationBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, + src.getModifiedItemAttr('siegeRemoteLogisticsAmountBonus'), + stackingPenalties=stack) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), 'maxRange', + src.getModifiedItemAttr('siegeRemoteLogisticsRangeBonus'), stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), 'falloffEffectiveness', + src.getModifiedItemAttr('siegeRemoteLogisticsRangeBonus'), stackingPenalties=True) + + # Local armor/shield rep effects (duration / amoutn) + for skill, amtAttr in ( + ('Capital Shield Operation', 'shieldBonus'), + ('Capital Repair Systems', 'armorDamageAmount')): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), 'duration', + src.getModifiedItemAttr('siegeLocalLogisticsDurationBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, + src.getModifiedItemAttr('siegeLocalLogisticsAmountBonus')) + + # Speed bonus + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('speedFactor'), stackingPenalties=True) + + # Scan resolution multiplier + fit.ship.multiplyItemAttr('scanResolution', src.getModifiedItemAttr('scanResolutionMultiplier'), + stackingPenalties=True) + + # Mass multiplier + fit.ship.multiplyItemAttr('mass', src.getModifiedItemAttr('siegeMassMultiplier'), stackingPenalties=True) + + # Max locked targets + fit.ship.increaseItemAttr('maxLockedTargets', src.getModifiedItemAttr('maxLockedTargetsBonus')) + + # EW cap need increase + groups = [ + 'Burst Jammer', + 'Weapon Disruptor', + 'ECM', + 'Stasis Grappler', + 'Sensor Dampener', + 'Target Painter'] + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups or + mod.item.requiresSkill('Propulsion Jamming'), + 'capacitorNeed', src.getModifiedItemAttr('ewCapacitorNeedBonus')) + + # todo: test for April 2016 release + # Block EWAR & projected effects + fit.ship.forceItemAttr('disallowOffensiveModifiers', src.getModifiedItemAttr('disallowOffensiveModifiers')) + fit.ship.forceItemAttr('disallowAssistance', src.getModifiedItemAttr('disallowAssistance')) + + # new in April 2016 release + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'damageMultiplier', + src.getModifiedItemAttr('droneDamageBonus'), stackingPenalties=True) + + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('siegeModeWarpStatus')) + fit.ship.boostItemAttr('sensorDampenerResistance', src.getModifiedItemAttr('sensorDampenerResistanceBonus')) + fit.ship.boostItemAttr('remoteAssistanceImpedance', src.getModifiedItemAttr('remoteAssistanceImpedanceBonus')) + fit.ship.boostItemAttr('remoteRepairImpedance', src.getModifiedItemAttr('remoteRepairImpedanceBonus')) + + fit.ship.forceItemAttr('disallowTethering', src.getModifiedItemAttr('disallowTethering')) + fit.ship.forceItemAttr('disallowDocking', src.getModifiedItemAttr('disallowDocking')) + + +class Effect6582(BaseEffect): + """ + moduleBonusSiegeModule + + Used by: + Variations of module: Siege Module I (2 of 2) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, src, context): + # Turrets + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret') or + mod.item.requiresSkill('Capital Hybrid Turret') or + mod.item.requiresSkill('Capital Projectile Turret'), + 'damageMultiplier', src.getModifiedItemAttr('siegeTurretDamageBonus')) + + # Missiles + for type in ('kinetic', 'thermal', 'explosive', 'em'): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes') or + mod.charge.requiresSkill('XL Cruise Missiles') or + mod.charge.requiresSkill('Torpedoes'), + '%sDamage' % type, src.getModifiedItemAttr('siegeMissileDamageBonus')) + + # Reppers + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation') or + mod.item.requiresSkill('Capital Repair Systems'), + 'duration', src.getModifiedItemAttr('siegeLocalLogisticsDurationBonus')) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Operation'), + 'shieldBonus', src.getModifiedItemAttr('siegeLocalLogisticsAmountBonus'), + stackingPenalties=True) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('siegeLocalLogisticsAmountBonus'), + stackingPenalties=True) + + # Speed penalty + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('speedFactor')) + + # Mass + fit.ship.multiplyItemAttr('mass', src.getModifiedItemAttr('siegeMassMultiplier'), + stackingPenalties=True, penaltyGroup='postMul') + + # @ todo: test for April 2016 release + # Block Hostile EWAR and friendly effects + fit.ship.forceItemAttr('disallowOffensiveModifiers', src.getModifiedItemAttr('disallowOffensiveModifiers')) + fit.ship.forceItemAttr('disallowAssistance', src.getModifiedItemAttr('disallowAssistance')) + + # new in April 2016 release + # missile ROF bonus + for group in ('Missile Launcher XL Torpedo', 'Missile Launcher Rapid Torpedo', 'Missile Launcher XL Cruise'): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == group, 'speed', + src.getModifiedItemAttr('siegeLauncherROFBonus')) + + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'maxVelocity', + src.getModifiedItemAttr('siegeTorpedoVelocityBonus'), stackingPenalties=True) + + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('siegeModeWarpStatus')) + fit.ship.boostItemAttr('remoteRepairImpedance', src.getModifiedItemAttr('remoteRepairImpedanceBonus')) + fit.ship.boostItemAttr('sensorDampenerResistance', src.getModifiedItemAttr('sensorDampenerResistanceBonus')) + fit.ship.boostItemAttr('remoteAssistanceImpedance', src.getModifiedItemAttr('remoteAssistanceImpedanceBonus')) + fit.ship.boostItemAttr('weaponDisruptionResistance', src.getModifiedItemAttr('weaponDisruptionResistanceBonus')) + + fit.ship.forceItemAttr('disallowDocking', src.getModifiedItemAttr('disallowDocking')) + fit.ship.forceItemAttr('disallowTethering', src.getModifiedItemAttr('disallowTethering')) + + +class Effect6591(BaseEffect): + """ + shipBonusSupercarrierA3WarpStrength + + Used by: + Ship: Aeon + Ship: Revenant + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusSupercarrierA3'), + skill='Amarr Carrier') + + +class Effect6592(BaseEffect): + """ + shipBonusSupercarrierC3WarpStrength + + Used by: + Ship: Revenant + Ship: Wyvern + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusSupercarrierC3'), + skill='Caldari Carrier') + + +class Effect6593(BaseEffect): + """ + shipBonusSupercarrierG3WarpStrength + + Used by: + Variations of ship: Nyx (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusSupercarrierG3'), + skill='Gallente Carrier') + + +class Effect6594(BaseEffect): + """ + shipBonusSupercarrierM3WarpStrength + + Used by: + Ship: Hel + Ship: Vendetta + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusSupercarrierM3'), + skill='Minmatar Carrier') + + +class Effect6595(BaseEffect): + """ + shipBonusCarrierA4WarfareLinksBonus + + Used by: + Ship: Archon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusCarrierA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusCarrierA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusCarrierA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusCarrierA4'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusCarrierA4'), skill='Amarr Carrier') + + +class Effect6596(BaseEffect): + """ + shipBonusCarrierC4WarfareLinksBonus + + Used by: + Ship: Chimera + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusCarrierC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusCarrierC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusCarrierC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusCarrierC4'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusCarrierC4'), skill='Caldari Carrier') + + +class Effect6597(BaseEffect): + """ + shipBonusCarrierG4WarfareLinksBonus + + Used by: + Ship: Thanatos + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusCarrierG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusCarrierG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusCarrierG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusCarrierG4'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusCarrierG4'), skill='Gallente Carrier') + + +class Effect6598(BaseEffect): + """ + shipBonusCarrierM4WarfareLinksBonus + + Used by: + Ship: Nidhoggur + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusCarrierM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusCarrierM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusCarrierM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusCarrierM4'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusCarrierM4'), skill='Minmatar Carrier') + + +class Effect6599(BaseEffect): + """ + shipBonusCarrierA1ArmorResists + + Used by: + Ship: Archon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('shipBonusCarrierA1'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('shipBonusCarrierA1'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusCarrierA1'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('shipBonusCarrierA1'), + skill='Amarr Carrier') + + +class Effect6600(BaseEffect): + """ + shipBonusCarrierC1ShieldResists + + Used by: + Ship: Chimera + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusCarrierC1'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusCarrierC1'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusCarrierC1'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusCarrierC1'), + skill='Caldari Carrier') + + +class Effect6601(BaseEffect): + """ + shipBonusCarrierG1FighterDamage + + Used by: + Ship: Thanatos + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusCarrierG1'), skill='Gallente Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusCarrierG1'), skill='Gallente Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusCarrierG1'), skill='Gallente Carrier') + + +class Effect6602(BaseEffect): + """ + shipBonusCarrierM1FighterDamage + + Used by: + Ship: Nidhoggur + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusCarrierM1'), skill='Minmatar Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusCarrierM1'), skill='Minmatar Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusCarrierM1'), skill='Minmatar Carrier') + + +class Effect6603(BaseEffect): + """ + shipBonusSupercarrierA1FighterDamage + + Used by: + Ship: Aeon + Ship: Revenant + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierA1'), skill='Amarr Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierA1'), skill='Amarr Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierA1'), skill='Amarr Carrier') + + +class Effect6604(BaseEffect): + """ + shipBonusSupercarrierC1FighterDamage + + Used by: + Ship: Revenant + Ship: Wyvern + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierC1'), skill='Caldari Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierC1'), skill='Caldari Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierC1'), skill='Caldari Carrier') + + +class Effect6605(BaseEffect): + """ + shipBonusSupercarrierG1FighterDamage + + Used by: + Variations of ship: Nyx (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierG1'), skill='Gallente Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierG1'), skill='Gallente Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierG1'), skill='Gallente Carrier') + + +class Effect6606(BaseEffect): + """ + shipBonusSupercarrierM1FighterDamage + + Used by: + Ship: Hel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierM1'), skill='Minmatar Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierM1'), skill='Minmatar Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusSupercarrierM1'), skill='Minmatar Carrier') + + +class Effect6607(BaseEffect): + """ + shipBonusSupercarrierA5WarfareLinksBonus + + Used by: + Ship: Aeon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusSupercarrierA5'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusSupercarrierA5'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusSupercarrierA5'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusSupercarrierA5'), skill='Amarr Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Armored Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusSupercarrierA5'), skill='Amarr Carrier') + + +class Effect6608(BaseEffect): + """ + shipBonusSupercarrierC5WarfareLinksBonus + + Used by: + Ship: Wyvern + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusSupercarrierC5'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusSupercarrierC5'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusSupercarrierC5'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusSupercarrierC5'), skill='Caldari Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Shield Command') or mod.item.requiresSkill('Information Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusSupercarrierC5'), skill='Caldari Carrier') + + +class Effect6609(BaseEffect): + """ + shipBonusSupercarrierG5WarfareLinksBonus + + Used by: + Ship: Nyx + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusSupercarrierG5'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusSupercarrierG5'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusSupercarrierG5'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusSupercarrierG5'), skill='Gallente Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Armored Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusSupercarrierG5'), skill='Gallente Carrier') + + +class Effect6610(BaseEffect): + """ + shipBonusSupercarrierM5WarfareLinksBonus + + Used by: + Ship: Hel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff4Value', src.getModifiedItemAttr('shipBonusSupercarrierM5'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff1Value', src.getModifiedItemAttr('shipBonusSupercarrierM5'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff3Value', src.getModifiedItemAttr('shipBonusSupercarrierM5'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'buffDuration', src.getModifiedItemAttr('shipBonusSupercarrierM5'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost( + lambda mod: mod.item.requiresSkill('Skirmish Command') or mod.item.requiresSkill('Shield Command'), + 'warfareBuff2Value', src.getModifiedItemAttr('shipBonusSupercarrierM5'), skill='Minmatar Carrier') + + +class Effect6611(BaseEffect): + """ + shipBonusSupercarrierC2AfterburnerBonus + + Used by: + Ship: Revenant + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), 'speedFactor', + src.getModifiedItemAttr('shipBonusSupercarrierC2'), skill='Caldari Carrier') + + +class Effect6612(BaseEffect): + """ + shipBonusSupercarrierA2FighterApplicationBonus + + Used by: + Ship: Revenant + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesExplosionVelocity', + src.getModifiedItemAttr('shipBonusSupercarrierA2'), skill='Amarr Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileExplosionVelocity', + src.getModifiedItemAttr('shipBonusSupercarrierA2'), skill='Amarr Carrier') + + +class Effect6613(BaseEffect): + """ + shipBonusSupercarrierRole1NumWarfareLinks + + Used by: + Ships from group: Supercarrier (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupActive', + src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6614(BaseEffect): + """ + shipBonusSupercarrierRole2ArmorShieldModuleBonus + + Used by: + Ships from group: Supercarrier (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'armorHPBonusAdd', + src.getModifiedItemAttr('shipBonusRole2')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Upgrades'), 'capacityBonus', + src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect6615(BaseEffect): + """ + shipBonusSupercarrierA4BurstProjectorBonus + + Used by: + Ship: Aeon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation'), + 'durationWeaponDisruptionBurstProjector', + src.getModifiedItemAttr('shipBonusSupercarrierA4'), skill='Amarr Carrier') + + +class Effect6616(BaseEffect): + """ + shipBonusSupercarrierC4BurstProjectorBonus + + Used by: + Ship: Wyvern + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation'), + 'durationECMJammerBurstProjector', src.getModifiedItemAttr('shipBonusSupercarrierC4'), + skill='Caldari Carrier') + + +class Effect6617(BaseEffect): + """ + shipBonusSupercarrierG4BurstProjectorBonus + + Used by: + Ship: Nyx + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation'), + 'durationSensorDampeningBurstProjector', + src.getModifiedItemAttr('shipBonusSupercarrierG4'), skill='Gallente Carrier') + + +class Effect6618(BaseEffect): + """ + shipBonusSupercarrierM4BurstProjectorBonus + + Used by: + Ship: Hel + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation'), + 'durationTargetIlluminationBurstProjector', + src.getModifiedItemAttr('shipBonusSupercarrierM4'), skill='Minmatar Carrier') + + +class Effect6619(BaseEffect): + """ + shipBonusCarrierRole1NumWarfareLinks + + Used by: + Ships from group: Carrier (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupActive', + src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6620(BaseEffect): + """ + shipBonusDreadnoughtC3ReloadBonus + + Used by: + Ship: Phoenix + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Missile Launcher Operation'), 'reloadTime', + src.getModifiedItemAttr('shipBonusDreadnoughtC3'), skill='Caldari Dreadnought') + + +class Effect6621(BaseEffect): + """ + shipBonusSupercarrierA2ArmorResists + + Used by: + Ship: Aeon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierA2'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierA2'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierA2'), + skill='Amarr Carrier') + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierA2'), + skill='Amarr Carrier') + + +class Effect6622(BaseEffect): + """ + shipBonusSupercarrierC2ShieldResists + + Used by: + Ship: Wyvern + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierC2'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierC2'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierC2'), + skill='Caldari Carrier') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusSupercarrierC2'), + skill='Caldari Carrier') + + +class Effect6623(BaseEffect): + """ + shipBonusSupercarrierG2FighterHitpoints + + Used by: + Variations of ship: Nyx (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('shipBonusSupercarrierG2'), skill='Gallente Carrier') + + +class Effect6624(BaseEffect): + """ + shipBonusSupercarrierM2FighterVelocity + + Used by: + Ship: Hel + Ship: Vendetta + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'maxVelocity', + src.getModifiedItemAttr('shipBonusSupercarrierM2'), skill='Minmatar Carrier') + + +class Effect6625(BaseEffect): + """ + shipBonusCarrierA2SupportFighterBonus + + Used by: + Ship: Archon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), 'fighterSquadronOrbitRange', + src.getModifiedItemAttr('shipBonusCarrierA2'), skill='Amarr Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), + 'fighterAbilityEnergyNeutralizerOptimalRange', + src.getModifiedItemAttr('shipBonusCarrierA2'), skill='Amarr Carrier') + + +class Effect6626(BaseEffect): + """ + shipBonusCarrierC2SupportFighterBonus + + Used by: + Ship: Chimera + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), 'fighterSquadronOrbitRange', + src.getModifiedItemAttr('shipBonusCarrierC2'), skill='Caldari Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), + 'fighterAbilityECMRangeOptimal', src.getModifiedItemAttr('shipBonusCarrierC2'), + skill='Caldari Carrier') + + +class Effect6627(BaseEffect): + """ + shipBonusCarrierG2SupportFighterBonus + + Used by: + Ship: Thanatos + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), 'fighterSquadronOrbitRange', + src.getModifiedItemAttr('shipBonusCarrierG2'), skill='Gallente Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), + 'fighterAbilityWarpDisruptionRange', src.getModifiedItemAttr('shipBonusCarrierG2'), + skill='Gallente Carrier') + + +class Effect6628(BaseEffect): + """ + shipBonusCarrierM2SupportFighterBonus + + Used by: + Ship: Nidhoggur + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), 'fighterSquadronOrbitRange', + src.getModifiedItemAttr('shipBonusCarrierM2'), skill='Minmatar Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Support Fighters'), + 'fighterAbilityStasisWebifierOptimalRange', + src.getModifiedItemAttr('shipBonusCarrierM2'), skill='Minmatar Carrier') + + +class Effect6629(BaseEffect): + """ + scriptResistanceBonusBonus + + Used by: + Charges named like: Resistance Script (8 of 8) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + src.boostItemAttr('emDamageResistanceBonus', src.getModifiedChargeAttr('emDamageResistanceBonusBonus')) + src.boostItemAttr('explosiveDamageResistanceBonus', + src.getModifiedChargeAttr('explosiveDamageResistanceBonusBonus')) + src.boostItemAttr('kineticDamageResistanceBonus', src.getModifiedChargeAttr('kineticDamageResistanceBonusBonus')) + src.boostItemAttr('thermalDamageResistanceBonus', src.getModifiedChargeAttr('thermalDamageResistanceBonusBonus')) + + +class Effect6634(BaseEffect): + """ + shipBonusTitanA1DamageBonus + + Used by: + Ship: Avatar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusTitanA1'), skill='Amarr Titan') + + +class Effect6635(BaseEffect): + """ + shipBonusTitanC1KinDamageBonus + + Used by: + Ship: Leviathan + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + + +class Effect6636(BaseEffect): + """ + shipBonusTitanG1DamageBonus + + Used by: + Ship: Erebus + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + + +class Effect6637(BaseEffect): + """ + shipBonusTitanM1DamageBonus + + Used by: + Ship: Ragnarok + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Projectile Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusTitanM1'), skill='Minmatar Titan') + + +class Effect6638(BaseEffect): + """ + shipBonusTitanC2ROFBonus + + Used by: + Variations of ship: Leviathan (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher XL Cruise', 'speed', + src.getModifiedItemAttr('shipBonusTitanC2'), skill='Caldari Titan') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Torpedo', 'speed', + src.getModifiedItemAttr('shipBonusTitanC2'), skill='Caldari Titan') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher XL Torpedo', 'speed', + src.getModifiedItemAttr('shipBonusTitanC2'), skill='Caldari Titan') + + +class Effect6639(BaseEffect): + """ + shipBonusSupercarrierA4FighterApplicationBonus + + Used by: + Ship: Revenant + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesExplosionRadius', + src.getModifiedItemAttr('shipBonusSupercarrierA4'), skill='Amarr Carrier') + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileExplosionRadius', + src.getModifiedItemAttr('shipBonusSupercarrierA4'), skill='Amarr Carrier') + + +class Effect6640(BaseEffect): + """ + shipBonusRole1NumWarfareLinks + + Used by: + Ships from group: Titan (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupActive', + src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6641(BaseEffect): + """ + shipBonusRole2ArmorPlates&ShieldExtendersBonus + + Used by: + Ships from group: Titan (7 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'armorHPBonusAdd', + src.getModifiedItemAttr('shipBonusRole2')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Upgrades'), 'capacityBonus', + src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect6642(BaseEffect): + """ + skillBonusDoomsdayRapidFiring + + Used by: + Skill: Doomsday Rapid Firing + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Doomsday Operation'), 'duration', + src.getModifiedItemAttr('rofBonus') * lvl) + + +class Effect6647(BaseEffect): + """ + shipBonusTitanA3WarpStrength + + Used by: + Variations of ship: Avatar (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusTitanA3'), skill='Amarr Titan') + + +class Effect6648(BaseEffect): + """ + shipBonusTitanC3WarpStrength + + Used by: + Variations of ship: Leviathan (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusTitanC3'), skill='Caldari Titan') + + +class Effect6649(BaseEffect): + """ + shipBonusTitanG3WarpStrength + + Used by: + Variations of ship: Erebus (2 of 2) + Ship: Komodo + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusTitanG3'), skill='Gallente Titan') + + +class Effect6650(BaseEffect): + """ + shipBonusTitanM3WarpStrength + + Used by: + Ships from group: Titan (3 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('shipBonusTitanM3'), skill='Minmatar Titan') + + +class Effect6651(BaseEffect): + """ + shipModuleAncillaryRemoteArmorRepairer + + Used by: + Modules from group: Ancillary Remote Armor Repairer (4 of 4) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' not in context: + return + + if module.charge and module.charge.name == 'Nanite Repair Paste': + multiplier = 3 + else: + multiplier = 1 + + amount = module.getModifiedItemAttr('armorDamageAmount') * multiplier + speed = module.getModifiedItemAttr('duration') / 1000.0 + rps = amount / speed + fit.extraAttributes.increase('armorRepair', rps) + fit.extraAttributes.increase('armorRepairPreSpool', rps) + fit.extraAttributes.increase('armorRepairFullSpool', rps) + + +class Effect6652(BaseEffect): + """ + shipModuleAncillaryRemoteShieldBooster + + Used by: + Modules from group: Ancillary Remote Shield Booster (4 of 4) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' not in context: + return + amount = module.getModifiedItemAttr('shieldBonus') + speed = module.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('shieldRepair', amount / speed, **kwargs) + + +class Effect6653(BaseEffect): + """ + shipBonusTitanA2CapNeed + + Used by: + Ship: Avatar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret'), 'capacitorNeed', + src.getModifiedItemAttr('shipBonusTitanA2'), skill='Amarr Titan') + + +class Effect6654(BaseEffect): + """ + shipBonusTitanG2ROFBonus + + Used by: + Variations of ship: Erebus (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), 'speed', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + + +class Effect6655(BaseEffect): + """ + shipBonusTitanM2ROFBonus + + Used by: + Ship: Ragnarok + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Projectile Turret'), 'speed', + src.getModifiedItemAttr('shipBonusTitanM2'), skill='Minmatar Titan') + + +class Effect6656(BaseEffect): + """ + shipBonusRole3XLTorpdeoVelocityBonus + + Used by: + Variations of ship: Leviathan (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'maxVelocity', + src.getModifiedItemAttr('shipBonusRole3')) + + +class Effect6657(BaseEffect): + """ + shipBonusTitanC5AllDamageBonus + + Used by: + Ship: Leviathan + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Cruise Missiles'), 'emDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('XL Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusTitanC5'), skill='Caldari Titan') + + +class Effect6658(BaseEffect): + """ + moduleBonusBastionModule + + Used by: + Module: Bastion Module I + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, src, context): + # Resistances + for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): + for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): + bonus = '%s%sDamageResonance' % (attrPrefix, damageType) + bonus = '%s%s' % (bonus[0].lower(), bonus[1:]) + booster = '%s%sDamageResonance' % (layer, damageType) + penalize = False if layer == 'hull' else True + fit.ship.multiplyItemAttr(bonus, src.getModifiedItemAttr(booster), + stackingPenalties=penalize, penaltyGroup='preMul') + + # Turrets + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret') or + mod.item.requiresSkill('Large Hybrid Turret') or + mod.item.requiresSkill('Large Projectile Turret'), + 'maxRange', src.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret') or + mod.item.requiresSkill('Large Hybrid Turret') or + mod.item.requiresSkill('Large Projectile Turret'), + 'falloff', src.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True) + + # Missiles + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes') or + mod.charge.requiresSkill('Cruise Missiles') or + mod.charge.requiresSkill('Heavy Missiles'), + 'maxVelocity', src.getModifiedItemAttr('missileVelocityBonus')) + + # Tanking + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('armorDamageAmountBonus'), + stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', src.getModifiedItemAttr('shieldBoostMultiplier'), + stackingPenalties=True) + + # Speed penalty + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('speedFactor')) + + # @todo: test these for April 2016 release + # Max locked targets + fit.ship.forceItemAttr('maxLockedTargets', src.getModifiedItemAttr('maxLockedTargets')) + + # Block Hostile ewar + fit.ship.forceItemAttr('disallowOffensiveModifiers', src.getModifiedItemAttr('disallowOffensiveModifiers')) + + # new with April 2016 release + for scanType in ('Magnetometric', 'Ladar', 'Gravimetric', 'Radar'): + fit.ship.boostItemAttr('scan{}Strength'.format(scanType), + src.getModifiedItemAttr('scan{}StrengthPercent'.format(scanType)), + stackingPenalties=True) + + fit.ship.boostItemAttr('remoteRepairImpedance', src.getModifiedItemAttr('remoteRepairImpedanceBonus')) + fit.ship.boostItemAttr('remoteAssistanceImpedance', src.getModifiedItemAttr('remoteAssistanceImpedanceBonus')) + fit.ship.boostItemAttr('sensorDampenerResistance', src.getModifiedItemAttr('sensorDampenerResistanceBonus')) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Micro Jump Drive Operation'), + 'activationBlocked', src.getModifiedItemAttr('activationBlockedStrenght')) + fit.ship.boostItemAttr('targetPainterResistance', src.getModifiedItemAttr('targetPainterResistanceBonus')) + fit.ship.boostItemAttr('weaponDisruptionResistance', src.getModifiedItemAttr('weaponDisruptionResistanceBonus')) + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('siegeModeWarpStatus')) + + fit.ship.forceItemAttr('disallowDocking', src.getModifiedItemAttr('disallowDocking')) + fit.ship.forceItemAttr('disallowTethering', src.getModifiedItemAttr('disallowTethering')) + + +class Effect6661(BaseEffect): + """ + shipBonusCarrierM3FighterVelocity + + Used by: + Ship: Nidhoggur + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'maxVelocity', + src.getModifiedItemAttr('shipBonusCarrierM3'), skill='Minmatar Carrier') + + +class Effect6662(BaseEffect): + """ + shipBonusCarrierG3FighterHitpoints + + Used by: + Ship: Thanatos + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('shipBonusCarrierG3'), skill='Gallente Carrier') + + +class Effect6663(BaseEffect): + """ + skillBonusDroneInterfacing + + Used by: + Skill: Drone Interfacing + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'damageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus') * lvl) + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), 'miningDroneAmountPercent', + src.getModifiedItemAttr('miningAmountBonus') * lvl) + + +class Effect6664(BaseEffect): + """ + skillBonusDroneSharpshooting + + Used by: + Skill: Drone Sharpshooting + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxRange', + src.getModifiedItemAttr('rangeSkillBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityMissilesRange', + src.getModifiedItemAttr('rangeSkillBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretRangeOptimal', + src.getModifiedItemAttr('rangeSkillBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileRangeOptimal', + src.getModifiedItemAttr('rangeSkillBonus') * lvl) + + +class Effect6665(BaseEffect): + """ + skillBonusDroneDurability + + Used by: + Skill: Drone Durability + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'hp', + src.getModifiedItemAttr('hullHpBonus') * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'armorHP', + src.getModifiedItemAttr('armorHpBonus') * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'shieldCapacity', + src.getModifiedItemAttr('shieldCapacityBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('shieldCapacityBonus') * lvl) + + +class Effect6667(BaseEffect): + """ + skillBonusDroneNavigation + + Used by: + Skill: Drone Navigation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxVelocity', + src.getModifiedItemAttr('maxVelocityBonus') * lvl) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'maxVelocity', + src.getModifiedItemAttr('maxVelocityBonus') * lvl) + + +class Effect6669(BaseEffect): + """ + moduleBonusCapitalDroneDurabilityEnhancer + + Used by: + Variations of module: Capital Drone Durability Enhancer I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'armorHP', + src.getModifiedItemAttr('hullHpBonus')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'hp', + src.getModifiedItemAttr('hullHpBonus')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'shieldCapacity', + src.getModifiedItemAttr('hullHpBonus')) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('hullHpBonus')) + fit.ship.boostItemAttr('cpuOutput', src.getModifiedItemAttr('drawback')) + + +class Effect6670(BaseEffect): + """ + moduleBonusCapitalDroneScopeChip + + Used by: + Variations of module: Capital Drone Scope Chip I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxRange', + src.getModifiedItemAttr('rangeSkillBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityMissilesRange', + src.getModifiedItemAttr('rangeSkillBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackTurretRangeOptimal', src.getModifiedItemAttr('rangeSkillBonus'), + stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), + 'fighterAbilityAttackMissileRangeOptimal', + src.getModifiedItemAttr('rangeSkillBonus'), stackingPenalties=True) + fit.ship.boostItemAttr('cpuOutput', src.getModifiedItemAttr('drawback')) + + +class Effect6671(BaseEffect): + """ + moduleBonusCapitalDroneSpeedAugmentor + + Used by: + Variations of module: Capital Drone Speed Augmentor I (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'maxVelocity', + src.getModifiedItemAttr('droneMaxVelocityBonus'), stackingPenalties=True) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'maxVelocity', + src.getModifiedItemAttr('droneMaxVelocityBonus'), stackingPenalties=True) + fit.ship.boostItemAttr('cpuOutput', src.getModifiedItemAttr('drawback')) + + +class Effect6672(BaseEffect): + """ + structureCombatRigSecurityModification + + Used by: + Items from market group: Structure Modifications > Structure Combat Rigs (32 of 34) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, module, context): + secModifier = module.getModifiedItemAttr('securityModifier') + module.multiplyItemAttr('structureRigDoomsdayDamageLossTargetBonus', secModifier) + module.multiplyItemAttr('structureRigScanResBonus', secModifier) + module.multiplyItemAttr('structureRigPDRangeBonus', secModifier) + module.multiplyItemAttr('structureRigPDCapUseBonus', secModifier) + module.multiplyItemAttr('structureRigMissileExploVeloBonus', secModifier) + module.multiplyItemAttr('structureRigMissileVelocityBonus', secModifier) + module.multiplyItemAttr('structureRigEwarOptimalBonus', secModifier) + module.multiplyItemAttr('structureRigEwarFalloffBonus', secModifier) + module.multiplyItemAttr('structureRigEwarCapUseBonus', secModifier) + module.multiplyItemAttr('structureRigMissileExplosionRadiusBonus', secModifier) + module.multiplyItemAttr('structureRigMaxTargetRangeBonus', secModifier) + + +class Effect6679(BaseEffect): + """ + skillStructureDoomsdayDurationBonus + + Used by: + Skill: Structure Doomsday Operation + """ + + type = 'passive', 'structure' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Doomsday Weapon', + 'duration', src.getModifiedItemAttr('durationBonus'), + skill='Structure Doomsday Operation') + + +class Effect6681(BaseEffect): + """ + shipBonusRole3NumWarfareLinks + + Used by: + Ships from group: Force Auxiliary (6 of 6) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupActive', + src.getModifiedItemAttr('shipBonusRole3')) + + +class Effect6682(BaseEffect): + """ + structureModuleEffectStasisWebifier + + Used by: + Structure Modules from group: Structure Stasis Webifier (2 of 2) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('speedFactor'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6683(BaseEffect): + """ + structureModuleEffectTargetPainter + + Used by: + Variations of structure module: Standup Target Painter I (2 of 2) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, *args, **kwargs): + if 'projected' in context: + fit.ship.boostItemAttr('signatureRadius', container.getModifiedItemAttr('signatureRadiusBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6684(BaseEffect): + """ + structureModuleEffectRemoteSensorDampener + + Used by: + Variations of structure module: Standup Remote Sensor Dampener I (2 of 2) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True, *args, **kwargs) + + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6685(BaseEffect): + """ + structureModuleEffectECM + + Used by: + Structure Modules from group: Structure ECM Battery (3 of 3) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' in context: + # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) + strModifier = 1 - module.getModifiedItemAttr('scan{0}StrengthBonus'.format(fit.scanType)) / fit.scanStrength + + fit.ecmProjectedStr *= strModifier + + +class Effect6686(BaseEffect): + """ + structureModuleEffectWeaponDisruption + + Used by: + Variations of structure module: Standup Weapon Disruptor I (2 of 2) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + 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, module.getModifiedItemAttr(srcAttr), + stackingPenalties=True, *args, **kwargs) + + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6687(BaseEffect): + """ + npcEntityRemoteArmorRepairer + + Used by: + Drones named like: Armor Maintenance Bot (6 of 6) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context): + if 'projected' in context: + bonus = container.getModifiedItemAttr('armorDamageAmount') + duration = container.getModifiedItemAttr('duration') / 1000.0 + rps = bonus / duration + fit.extraAttributes.increase('armorRepair', rps) + fit.extraAttributes.increase('armorRepairPreSpool', rps) + fit.extraAttributes.increase('armorRepairFullSpool', rps) + + +class Effect6688(BaseEffect): + """ + npcEntityRemoteShieldBooster + + Used by: + Drones named like: Shield Maintenance Bot (6 of 6) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context): + if 'projected' in context: + bonus = container.getModifiedItemAttr('shieldBonus') + duration = container.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('shieldRepair', bonus / duration) + + +class Effect6689(BaseEffect): + """ + npcEntityRemoteHullRepairer + + Used by: + Drones named like: Hull Maintenance Bot (6 of 6) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context): + if 'projected' not in context: + return + bonus = module.getModifiedItemAttr('structureDamageAmount') + duration = module.getModifiedItemAttr('duration') / 1000.0 + fit.extraAttributes.increase('hullRepair', bonus / duration) + + +class Effect6690(BaseEffect): + """ + remoteWebifierEntity + + Used by: + Drones from group: Stasis Webifying Drone (3 of 3) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + fit.ship.boostItemAttr('maxVelocity', module.getModifiedItemAttr('speedFactor'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6691(BaseEffect): + """ + entityEnergyNeutralizerFalloff + + Used by: + Drones from group: Energy Neutralizer Drone (3 of 3) + """ + + type = 'active', 'projected' + + @staticmethod + def handler(fit, src, context, **kwargs): + if 'projected' in context and ((hasattr(src, 'state') and src.state >= FittingModuleState.ACTIVE) or + hasattr(src, 'amountActive')): + amount = src.getModifiedItemAttr('energyNeutralizerAmount') + time = src.getModifiedItemAttr('energyNeutralizerDuration') + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.addDrain(src, time, amount, 0) + + +class Effect6692(BaseEffect): + """ + remoteTargetPaintEntity + + Used by: + Drones named like: TP (3 of 3) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, *args, **kwargs): + if 'projected' in context: + fit.ship.boostItemAttr('signatureRadius', container.getModifiedItemAttr('signatureRadiusBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6693(BaseEffect): + """ + remoteSensorDampEntity + + Used by: + Drones named like: SD (3 of 3) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' not in context: + return + + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('maxTargetRangeBonus'), + stackingPenalties=True, *args, **kwargs) + + fit.ship.boostItemAttr('scanResolution', module.getModifiedItemAttr('scanResolutionBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6694(BaseEffect): + """ + npcEntityWeaponDisruptor + + Used by: + Drones named like: TD (3 of 3) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, *args, **kwargs): + if 'projected' in context: + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'trackingSpeed', module.getModifiedItemAttr('trackingSpeedBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'maxRange', module.getModifiedItemAttr('maxRangeBonus'), + stackingPenalties=True, *args, **kwargs) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), + 'falloff', module.getModifiedItemAttr('falloffBonus'), + stackingPenalties=True, *args, **kwargs) + + +class Effect6695(BaseEffect): + """ + entityECMFalloff + + Used by: + Drones named like: EC (3 of 3) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' in context: + # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) + strModifier = 1 - module.getModifiedItemAttr('scan{0}StrengthBonus'.format(fit.scanType)) / fit.scanStrength + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.ecmProjectedStr *= strModifier + + +class Effect6697(BaseEffect): + """ + rigDrawbackReductionArmor + + Used by: + Skill: Armor Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Armor', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Resource Processing', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6698(BaseEffect): + """ + rigDrawbackReductionAstronautics + + Used by: + Skill: Astronautics Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Navigation', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Anchor', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6699(BaseEffect): + """ + rigDrawbackReductionDrones + + Used by: + Skill: Drones Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Drones', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6700(BaseEffect): + """ + rigDrawbackReductionElectronic + + Used by: + Skill: Electronic Superiority Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Electronic Systems', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Scanning', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Targeting', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6701(BaseEffect): + """ + rigDrawbackReductionProjectile + + Used by: + Skill: Projectile Weapon Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Projectile Weapon', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6702(BaseEffect): + """ + rigDrawbackReductionEnergyWeapon + + Used by: + Skill: Energy Weapon Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Energy Weapon', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6703(BaseEffect): + """ + rigDrawbackReductionHybrid + + Used by: + Skill: Hybrid Weapon Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Hybrid Weapon', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6704(BaseEffect): + """ + rigDrawbackReductionLauncher + + Used by: + Skill: Launcher Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Launcher', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6705(BaseEffect): + """ + rigDrawbackReductionShield + + Used by: + Skill: Shield Rigging + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Rig Shield', 'drawback', + src.getModifiedItemAttr('rigDrawbackBonus') * lvl) + + +class Effect6706(BaseEffect): + """ + setBonusAsklepian + + Used by: + Implants named like: grade Asklepian (18 of 18) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Cybernetics'), + 'armorRepairBonus', src.getModifiedItemAttr('implantSetSerpentis2')) + + +class Effect6708(BaseEffect): + """ + armorRepairAmountBonusSubcap + + Used by: + Implants named like: grade Asklepian (15 of 18) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('armorRepairBonus')) + + +class Effect6709(BaseEffect): + """ + shipBonusRole1CapitalHybridDamageBonus + + Used by: + Ship: Vehement + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6710(BaseEffect): + """ + shipBonusDreadnoughtM1WebStrengthBonus + + Used by: + Ship: Vehement + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'speedFactor', + src.getModifiedItemAttr('shipBonusDreadnoughtM1'), skill='Minmatar Dreadnought') + + +class Effect6711(BaseEffect): + """ + shipBonusRole3CapitalHybridDamageBonus + + Used by: + Ship: Vanquisher + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Hybrid Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusRole3')) + + +class Effect6712(BaseEffect): + """ + shipBonusTitanM1WebStrengthBonus + + Used by: + Ship: Vanquisher + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'speedFactor', + src.getModifiedItemAttr('shipBonusTitanM1'), skill='Minmatar Titan') + + +class Effect6713(BaseEffect): + """ + shipBonusSupercarrierM1BurstProjectorWebBonus + + Used by: + Ship: Hel + Ship: Vendetta + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Burst Projector Operation'), 'speedFactor', + src.getModifiedItemAttr('shipBonusSupercarrierM1'), skill='Minmatar Carrier') + + +class Effect6714(BaseEffect): + """ + ECMBurstJammer + + Used by: + Modules from group: Burst Jammer (11 of 11) + """ + + type = 'projected', 'active' + + @staticmethod + def handler(fit, module, context, **kwargs): + if 'projected' in context: + # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) + strModifier = 1 - module.getModifiedItemAttr('scan{0}StrengthBonus'.format(fit.scanType)) / fit.scanStrength + + if 'effect' in kwargs: + from eos.modifiedAttributeDict import ModifiedAttributeDict + strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) + + fit.ecmProjectedStr *= strModifier + + +class Effect6717(BaseEffect): + """ + roleBonusIceOreMiningDurationCap + + Used by: + Variations of ship: Covetor (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), 'capacitorNeed', + src.getModifiedItemAttr('miningDurationRoleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining'), 'duration', + src.getModifiedItemAttr('miningDurationRoleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), 'duration', + src.getModifiedItemAttr('miningDurationRoleBonus')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting'), 'capacitorNeed', + src.getModifiedItemAttr('miningDurationRoleBonus')) + + +class Effect6720(BaseEffect): + """ + shipBonusDroneRepairMC1 + + Used by: + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'shieldBonus', + src.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'structureDamageAmount', + src.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'armorDamageAmount', + src.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + + +class Effect6721(BaseEffect): + """ + eliteBonusLogisticRemoteArmorRepairOptimalFalloff1 + + Used by: + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'falloffEffectiveness', + src.getModifiedItemAttr('eliteBonusLogistics1'), + skill='Logistics Cruisers') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'maxRange', + src.getModifiedItemAttr('eliteBonusLogistics1'), + skill='Logistics Cruisers') + + +class Effect6722(BaseEffect): + """ + roleBonusRemoteArmorRepairOptimalFalloff + + Used by: + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'falloffEffectiveness', + src.getModifiedItemAttr('roleBonusRepairRange')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'maxRange', + src.getModifiedItemAttr('roleBonusRepairRange')) + + +class Effect6723(BaseEffect): + """ + shipBonusCloakCpuMC2 + + Used by: + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Cloaking'), 'cpu', + src.getModifiedItemAttr('shipBonusMC2'), skill='Minmatar Cruiser') + + +class Effect6724(BaseEffect): + """ + eliteBonusLogisticRemoteArmorRepairDuration3 + + Used by: + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'duration', + src.getModifiedItemAttr('eliteBonusLogistics3'), skill='Logistics Cruisers') + + +class Effect6725(BaseEffect): + """ + shipBonusSETFalloffAF2 + + Used by: + Ship: Caedes + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), 'falloff', + src.getModifiedItemAttr('shipBonus2AF'), skill='Amarr Frigate') + + +class Effect6726(BaseEffect): + """ + shipBonusCloakCpuMF1 + + Used by: + Ship: Caedes + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Cloaking'), 'cpu', + src.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect6727(BaseEffect): + """ + eliteBonusCoverOpsNOSNeutFalloff1 + + Used by: + Ship: Caedes + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Energy Nosferatu', 'Energy Neutralizer'), + 'falloffEffectiveness', src.getModifiedItemAttr('eliteBonusCovertOps1'), + stackingPenalties=True, skill='Covert Ops') + + +class Effect6730(BaseEffect): + """ + moduleBonusMicrowarpdrive + + Used by: + Modules from group: Propulsion Module (68 of 133) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('mass', module.getModifiedItemAttr('massAddition')) + speedBoost = module.getModifiedItemAttr('speedFactor') + mass = fit.ship.getModifiedItemAttr('mass') + thrust = module.getModifiedItemAttr('speedBoostFactor') + fit.ship.boostItemAttr('maxVelocity', speedBoost * thrust / mass) + fit.ship.boostItemAttr('signatureRadius', module.getModifiedItemAttr('signatureRadiusBonus'), + stackingPenalties=True) + + +class Effect6731(BaseEffect): + """ + moduleBonusAfterburner + + Used by: + Modules from group: Propulsion Module (65 of 133) + """ + + runTime = 'late' + type = 'active' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('mass', module.getModifiedItemAttr('massAddition')) + speedBoost = module.getModifiedItemAttr('speedFactor') + mass = fit.ship.getModifiedItemAttr('mass') + thrust = module.getModifiedItemAttr('speedBoostFactor') + fit.ship.boostItemAttr('maxVelocity', speedBoost * thrust / mass) + + +class Effect6732(BaseEffect): + """ + moduleBonusWarfareLinkArmor + + Used by: + Variations of module: Armor Command Burst I (2 of 2) + """ + + type = 'active', 'gang' + + @staticmethod + def handler(fit, module, context, **kwargs): + for x in range(1, 5): + if module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)): + value = module.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, module, kwargs['effect']) + + +class Effect6733(BaseEffect): + """ + moduleBonusWarfareLinkShield + + Used by: + Variations of module: Shield Command Burst I (2 of 2) + """ + + type = 'active', 'gang' + + @staticmethod + def handler(fit, module, context, **kwargs): + for x in range(1, 5): + if module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)): + value = module.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, module, kwargs['effect']) + + +class Effect6734(BaseEffect): + """ + moduleBonusWarfareLinkSkirmish + + Used by: + Variations of module: Skirmish Command Burst I (2 of 2) + """ + + type = 'active', 'gang' + + @staticmethod + def handler(fit, module, context, **kwargs): + for x in range(1, 5): + if module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)): + value = module.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, module, kwargs['effect']) + + +class Effect6735(BaseEffect): + """ + moduleBonusWarfareLinkInfo + + Used by: + Variations of module: Information Command Burst I (2 of 2) + """ + + type = 'active', 'gang' + + @staticmethod + def handler(fit, module, context, **kwargs): + for x in range(1, 5): + if module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)): + value = module.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, module, kwargs['effect']) + + +class Effect6736(BaseEffect): + """ + moduleBonusWarfareLinkMining + + Used by: + Variations of module: Mining Foreman Burst I (2 of 2) + """ + + type = 'active', 'gang' + + @staticmethod + def handler(fit, module, context, **kwargs): + for x in range(1, 5): + if module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)): + value = module.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = module.getModifiedChargeAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, module, kwargs['effect']) + + +class Effect6737(BaseEffect): + """ + chargeBonusWarfareCharge + + Used by: + Items from market group: Ammunition & Charges > Command Burst Charges (15 of 15) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + for x in range(1, 4): + value = module.getModifiedChargeAttr('warfareBuff{}Multiplier'.format(x)) + module.multiplyItemAttr('warfareBuff{}Value'.format(x), value) + + +class Effect6753(BaseEffect): + """ + moduleTitanEffectGenerator + + Used by: + Modules from group: Titan Phenomena Generator (4 of 4) + """ + + type = 'active', 'gang' + + @staticmethod + def handler(fit, module, context, **kwargs): + for x in range(1, 5): + if module.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = module.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = module.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, module, kwargs['effect']) + + +class Effect6762(BaseEffect): + """ + miningDroneSpecBonus + + Used by: + Skill: Mining Drone Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Drone Specialization'), 'miningAmount', + src.getModifiedItemAttr('miningAmountBonus') * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Drone Specialization'), 'maxVelocity', + src.getModifiedItemAttr('maxVelocityBonus') * lvl) + + +class Effect6763(BaseEffect): + """ + iceHarvestingDroneOperationDurationBonus + + Used by: + Modules named like: Drone Mining Augmentor (8 of 8) + Skill: Ice Harvesting Drone Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level if 'skill' in context else 1 + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting Drone Operation'), 'duration', src.getModifiedItemAttr('rofBonus') * lvl) + + +class Effect6764(BaseEffect): + """ + iceHarvestingDroneSpecBonus + + Used by: + Skill: Ice Harvesting Drone Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting Drone Specialization'), 'duration', + src.getModifiedItemAttr('rofBonus') * lvl) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting Drone Specialization'), + 'maxVelocity', src.getModifiedItemAttr('maxVelocityBonus') * lvl) + + +class Effect6765(BaseEffect): + """ + spatialPhenomenaGenerationDurationBonus + + Used by: + Skill: Spatial Phenomena Generation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Spatial Phenomena Generation'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6766(BaseEffect): + """ + commandProcessorEffect + + Used by: + Modules named like: Command Processor I (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupActive', + src.getModifiedItemAttr('maxGangModules')) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Leadership'), 'maxGroupOnline', + src.getModifiedItemAttr('maxGangModules')) + + +class Effect6769(BaseEffect): + """ + commandBurstAoEBonus + + Used by: + Skill: Fleet Command + Skill: Leadership + Skill: Wing Command + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), 'maxRange', + src.getModifiedItemAttr('areaOfEffectBonus') * src.level) + + +class Effect6770(BaseEffect): + """ + armoredCommandDurationBonus + + Used by: + Skill: Armored Command + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6771(BaseEffect): + """ + shieldCommandDurationBonus + + Used by: + Skill: Shield Command + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6772(BaseEffect): + """ + informationCommandDurationBonus + + Used by: + Skill: Information Command + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6773(BaseEffect): + """ + skirmishCommandDurationBonus + + Used by: + Skill: Skirmish Command + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6774(BaseEffect): + """ + miningForemanDurationBonus + + Used by: + Skill: Mining Foreman + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6776(BaseEffect): + """ + armoredCommandStrengthBonus + + Used by: + Skill: Armored Command Specialist + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Armored Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + + +class Effect6777(BaseEffect): + """ + shieldCommandStrengthBonus + + Used by: + Skill: Shield Command Specialist + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + + +class Effect6778(BaseEffect): + """ + informationCommandStrengthBonus + + Used by: + Skill: Information Command Specialist + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Information Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + + +class Effect6779(BaseEffect): + """ + skirmishCommandStrengthBonus + + Used by: + Skill: Skirmish Command Specialist + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Skirmish Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('commandStrengthBonus') * lvl) + + +class Effect6780(BaseEffect): + """ + miningForemanStrengthBonus + + Used by: + Skill: Mining Director + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff4Value', src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff3Value', src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff2Value', src.getModifiedItemAttr('commandStrengthBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff1Value', src.getModifiedItemAttr('commandStrengthBonus') * lvl) + + +class Effect6782(BaseEffect): + """ + commandBurstReloadTimeBonus + + Used by: + Skill: Command Burst Specialist + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), + 'reloadTime', + src.getModifiedItemAttr('reloadTimeBonus') * lvl) + + +class Effect6783(BaseEffect): + """ + commandBurstAoERoleBonus + + Used by: + Ships from group: Carrier (4 of 4) + Ships from group: Combat Battlecruiser (14 of 14) + Ships from group: Command Ship (8 of 8) + Ships from group: Force Auxiliary (6 of 6) + Ships from group: Supercarrier (6 of 6) + Ships from group: Titan (7 of 7) + Subsystems named like: Offensive Support Processor (4 of 4) + Ship: Orca + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), 'maxRange', + src.getModifiedItemAttr('roleBonusCommandBurstAoERange')) + + +class Effect6786(BaseEffect): + """ + shieldCommandBurstBonusICS3 + + Used by: + Ship: Orca + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff4Multiplier', + src.getModifiedItemAttr('shipBonusICS3'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff1Multiplier', + src.getModifiedItemAttr('shipBonusICS3'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff2Multiplier', + src.getModifiedItemAttr('shipBonusICS3'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff3Multiplier', + src.getModifiedItemAttr('shipBonusICS3'), skill='Industrial Command Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'buffDuration', + src.getModifiedItemAttr('shipBonusICS3'), skill='Industrial Command Ships') + + +class Effect6787(BaseEffect): + """ + shipBonusDroneHPDamageMiningICS4 + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', + src.getModifiedItemAttr('shipBonusICS4'), + skill='Industrial Command Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'shieldCapacity', + src.getModifiedItemAttr('shipBonusICS4'), + skill='Industrial Command Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'armorHP', + src.getModifiedItemAttr('shipBonusICS4'), + skill='Industrial Command Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'hp', + src.getModifiedItemAttr('shipBonusICS4'), + skill='Industrial Command Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', + src.getModifiedItemAttr('shipBonusICS4'), + skill='Industrial Command Ships' + ) + + +class Effect6788(BaseEffect): + """ + shipBonusDroneIceHarvestingICS5 + + Used by: + Ships from group: Industrial Command Ship (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Ice Harvesting Drone Operation'), + 'duration', + src.getModifiedItemAttr('shipBonusICS5'), + skill='Industrial Command Ships' + ) + + +class Effect6789(BaseEffect): + """ + industrialBonusDroneDamage + + Used by: + Ships from group: Blockade Runner (4 of 4) + Ships from group: Deep Space Transport (4 of 4) + Ships from group: Exhumer (3 of 3) + Ships from group: Industrial (17 of 17) + Ships from group: Industrial Command Ship (2 of 2) + Ships from group: Mining Barge (3 of 3) + Variations of ship: Venture (3 of 3) + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', + src.getModifiedItemAttr('industrialBonusDroneDamage')) + + +class Effect6790(BaseEffect): + """ + shipBonusDroneIceHarvestingRole + + Used by: + Ship: Orca + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Ice Harvesting Drone Operation'), 'duration', + src.getModifiedItemAttr('roleBonusDroneIceHarvestingSpeed')) + + +class Effect6792(BaseEffect): + """ + shipBonusDroneHPDamageMiningORECapital4 + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'damageMultiplier', + src.getModifiedItemAttr('shipBonusORECapital4'), + skill='Capital Industrial Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'shieldCapacity', + src.getModifiedItemAttr('shipBonusORECapital4'), + skill='Capital Industrial Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'armorHP', + src.getModifiedItemAttr('shipBonusORECapital4'), + skill='Capital Industrial Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Drones'), + 'hp', + src.getModifiedItemAttr('shipBonusORECapital4'), + skill='Capital Industrial Ships' + ) + + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Mining Drone Operation'), + 'miningAmount', + src.getModifiedItemAttr('shipBonusORECapital4'), + skill='Capital Industrial Ships' + ) + + +class Effect6793(BaseEffect): + """ + miningForemanBurstBonusORECapital2 + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff1Value', + src.getModifiedItemAttr('shipBonusORECapital2'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff2Value', + src.getModifiedItemAttr('shipBonusORECapital2'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff4Value', + src.getModifiedItemAttr('shipBonusORECapital2'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'warfareBuff3Value', + src.getModifiedItemAttr('shipBonusORECapital2'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Mining Foreman'), 'buffDuration', + src.getModifiedItemAttr('shipBonusORECapital2'), skill='Capital Industrial Ships') + + +class Effect6794(BaseEffect): + """ + shieldCommandBurstBonusORECapital3 + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff4Value', + src.getModifiedItemAttr('shipBonusORECapital3'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'buffDuration', + src.getModifiedItemAttr('shipBonusORECapital3'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff1Value', + src.getModifiedItemAttr('shipBonusORECapital3'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff3Value', + src.getModifiedItemAttr('shipBonusORECapital3'), skill='Capital Industrial Ships') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Command'), 'warfareBuff2Value', + src.getModifiedItemAttr('shipBonusORECapital3'), skill='Capital Industrial Ships') + + +class Effect6795(BaseEffect): + """ + shipBonusDroneIceHarvestingORECapital5 + + Used by: + Ship: Rorqual + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill('Ice Harvesting Drone Operation'), + 'duration', + src.getModifiedItemAttr('shipBonusORECapital5'), + skill='Capital Industrial Ships' + ) + + +class Effect6796(BaseEffect): + """ + shipModeSHTDamagePostDiv + + Used by: + Module: Hecate Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + 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' + ) + + +class Effect6797(BaseEffect): + """ + shipModeSPTDamagePostDiv + + Used by: + Module: Svipul Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + 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' + ) + + +class Effect6798(BaseEffect): + """ + shipModeSETDamagePostDiv + + Used by: + Module: Confessor Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + 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' + ) + + +class Effect6799(BaseEffect): + """ + shipModeSmallMissileDamagePostDiv + + Used by: + Module: Jackdaw Sharpshooter Mode + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + types = ('thermal', 'em', 'explosive', 'kinetic') + for type in types: + fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), + '{}Damage'.format(type), + 1 / module.getModifiedItemAttr('modeDamageBonusPostDiv'), + stackingPenalties=True, + penaltyGroup='postDiv') + + +class Effect6800(BaseEffect): + """ + modeDampTDResistsPostDiv + + Used by: + Modules named like: Sharpshooter Mode (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('weaponDisruptionResistance', 1 / module.getModifiedItemAttr('modeEwarResistancePostDiv')) + fit.ship.multiplyItemAttr('sensorDampenerResistance', 1 / module.getModifiedItemAttr('modeEwarResistancePostDiv')) + + +class Effect6801(BaseEffect): + """ + modeMWDandABBoostPostDiv + + Used by: + Module: Confessor Propulsion Mode + Module: Svipul Propulsion Mode + """ + + type = 'passive' + + @staticmethod + 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' + ) + + +class Effect6807(BaseEffect): + """ + invulnerabilityCoreDurationBonus + + Used by: + Skill: Invulnerability Core Operation + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + lvl = src.level + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Invulnerability Core Operation'), 'buffDuration', + src.getModifiedItemAttr('durationBonus') * lvl) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Invulnerability Core Operation'), 'duration', + src.getModifiedItemAttr('durationBonus') * lvl) + + +class Effect6844(BaseEffect): + """ + skillMultiplierDefenderMissileVelocity + + Used by: + Skill: Defender Missiles + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Defender Missiles'), + 'maxVelocity', skill.getModifiedItemAttr('missileVelocityBonus') * skill.level) + + +class Effect6845(BaseEffect): + """ + shipBonusCommandDestroyerRole1DefenderBonus + + Used by: + Ships from group: Command Destroyer (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Defender Missiles'), + 'moduleReactivationDelay', ship.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6851(BaseEffect): + """ + shipBonusRole3CapitalEnergyDamageBonus + + Used by: + Ship: Chemosh + Ship: Molok + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Energy Turret'), 'damageMultiplier', src.getModifiedItemAttr('shipBonusRole3')) + + +class Effect6852(BaseEffect): + """ + shipBonusTitanM1WebRangeBonus + + Used by: + Ship: Molok + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', src.getModifiedItemAttr('shipBonusTitanM1'), skill='Minmatar Titan') + + +class Effect6853(BaseEffect): + """ + shipBonusTitanA1EnergyWarfareAmountBonus + + Used by: + Ship: Molok + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', src.getModifiedItemAttr('shipBonusTitanA1'), skill='Amarr Titan') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', src.getModifiedItemAttr('shipBonusTitanA1'), skill='Amarr Titan') + + +class Effect6855(BaseEffect): + """ + shipBonusDreadnoughtA1EnergyWarfareAmountBonus + + Used by: + Ship: Chemosh + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', src.getModifiedItemAttr('shipBonusDreadnoughtA1'), skill='Amarr Dreadnought') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', + 'energyNeutralizerAmount', src.getModifiedItemAttr('shipBonusDreadnoughtA1'), skill='Amarr Dreadnought') + + +class Effect6856(BaseEffect): + """ + shipBonusDreadnoughtM1WebRangeBonus + + Used by: + Ship: Chemosh + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'maxRange', src.getModifiedItemAttr('shipBonusDreadnoughtM1'), skill='Minmatar Dreadnought') + + +class Effect6857(BaseEffect): + """ + shipBonusForceAuxiliaryA1NosferatuRangeBonus + + Used by: + Ship: Dagon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'maxRange', src.getModifiedItemAttr('shipBonusForceAuxiliaryA1'), skill='Amarr Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'falloffEffectiveness', src.getModifiedItemAttr('shipBonusForceAuxiliaryA1'), skill='Amarr Carrier') + + +class Effect6858(BaseEffect): + """ + shipBonusForceAuxiliaryA1NosferatuDrainAmount + + Used by: + Ship: Dagon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', + 'powerTransferAmount', src.getModifiedItemAttr('shipBonusForceAuxiliaryA1'), skill='Amarr Carrier') + + +class Effect6859(BaseEffect): + """ + shipBonusRole4NosferatuCPUBonus + + Used by: + Ship: Dagon + Ship: Rabisu + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Nosferatu', 'cpu', src.getModifiedItemAttr('shipBonusRole4')) + + +class Effect6860(BaseEffect): + """ + shipBonusRole5RemoteArmorRepairPowergridBonus + + Used by: + Ships from group: Logistics (3 of 7) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'power', + src.getModifiedItemAttr('shipBonusRole5')) + + +class Effect6861(BaseEffect): + """ + shipBonusRole5CapitalRemoteArmorRepairPowergridBonus + + Used by: + Ship: Dagon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Remote Armor Repair Systems'), 'power', src.getModifiedItemAttr('shipBonusRole5')) + + +class Effect6862(BaseEffect): + """ + shipBonusForceAuxiliaryM1RemoteArmorRepairDuration + + Used by: + Ship: Dagon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'duration', src.getModifiedItemAttr('shipBonusForceAuxiliaryM1'), skill='Minmatar Carrier') + + +class Effect6865(BaseEffect): + """ + eliteBonusCoverOpsWarpVelocity1 + + Used by: + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('eliteBonusCovertOps1'), skill='Covert Ops') + + +class Effect6866(BaseEffect): + """ + shipBonusSmallMissileFlightTimeCF1 + + Used by: + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Rockets'), + 'explosionDelay', src.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Light Missiles'), + 'explosionDelay', src.getModifiedItemAttr('shipBonusCF'), skill='Caldari Frigate') + + +class Effect6867(BaseEffect): + """ + shipBonusSPTRoFMF + + Used by: + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Projectile Turret'), + 'speed', src.getModifiedItemAttr('shipBonusMF'), skill='Minmatar Frigate') + + +class Effect6871(BaseEffect): + """ + concordSecStatusTankBonus + + Used by: + Ship: Enforcer + Ship: Marshal + Ship: Pacifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + + # Get pilot sec status bonus directly here, instead of going through the intermediary effects + # via https://forums.eveonline.com/default.aspx?g=posts&t=515826 + try: + bonus = max(0, min(50.0, (src.parent.character.secStatus * 10))) + except: + bonus = None + + if bonus is not None: + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', bonus, stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'shieldBonus', bonus, stackingPenalties=True) + + +class Effect6872(BaseEffect): + """ + eliteReconStasisWebBonus1 + + Used by: + Ship: Enforcer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'maxRange', src.getModifiedItemAttr('eliteBonusReconShip1'), skill='Recon Ships') + + +class Effect6873(BaseEffect): + """ + eliteBonusReconWarpVelocity3 + + Used by: + Ship: Enforcer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect6874(BaseEffect): + """ + shipBonusMedMissileFlightTimeCC2 + + Used by: + Ship: Enforcer + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'explosionDelay', src.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'explosionDelay', src.getModifiedItemAttr('shipBonusCC2'), skill='Caldari Cruiser') + + +class Effect6877(BaseEffect): + """ + eliteBonusBlackOpsWarpVelocity1 + + Used by: + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('eliteBonusBlackOps1'), stackingPenalties=True, skill='Black Ops') + + +class Effect6878(BaseEffect): + """ + eliteBonusBlackOpsScramblerRange4 + + Used by: + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', 'maxRange', + src.getModifiedItemAttr('eliteBonusBlackOps4'), stackingPenalties=True, skill='Black Ops') + + +class Effect6879(BaseEffect): + """ + eliteBonusBlackOpsWebRange3 + + Used by: + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'maxRange', + src.getModifiedItemAttr('eliteBonusBlackOps3'), stackingPenalties=True, skill='Black Ops') + + +class Effect6880(BaseEffect): + """ + shipBonusLauncherRoF2CB + + Used by: + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Cruise', 'speed', + src.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', 'speed', + src.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Rapid Heavy', 'speed', + src.getModifiedItemAttr('shipBonus2CB'), skill='Caldari Battleship') + + +class Effect6881(BaseEffect): + """ + shipBonusLargeMissileFlightTimeCB1 + + Used by: + Ship: Marshal + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'explosionDelay', + src.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), 'explosionDelay', + src.getModifiedItemAttr('shipBonusCB'), skill='Caldari Battleship') + + +class Effect6883(BaseEffect): + """ + shipBonusForceAuxiliaryM2LocalRepairAmount + + Used by: + Ship: Dagon + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusForceAuxiliaryM2'), skill='Minmatar Carrier') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Repair Systems'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusForceAuxiliaryM2'), skill='Minmatar Carrier') + + +class Effect6894(BaseEffect): + """ + subsystemEnergyNeutFittingReduction + + Used by: + Subsystem: Legion Core - Energy Parasitic Complex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Energy Nosferatu', 'Energy Neutralizer'), + 'cpu', src.getModifiedItemAttr('subsystemEnergyNeutFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Energy Nosferatu', 'Energy Neutralizer'), + 'power', src.getModifiedItemAttr('subsystemEnergyNeutFittingReduction')) + + +class Effect6895(BaseEffect): + """ + subsystemMETFittingReduction + + Used by: + Subsystem: Legion Offensive - Liquid Crystal Magnifiers + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'cpu', src.getModifiedItemAttr('subsystemMETFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Energy Turret'), + 'power', src.getModifiedItemAttr('subsystemMETFittingReduction')) + + +class Effect6896(BaseEffect): + """ + subsystemMHTFittingReduction + + Used by: + Subsystem: Proteus Offensive - Drone Synthesis Projector + Subsystem: Proteus Offensive - Hybrid Encoding Platform + Subsystem: Tengu Offensive - Magnetic Infusion Basin + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'cpu', src.getModifiedItemAttr('subsystemMHTFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), + 'power', src.getModifiedItemAttr('subsystemMHTFittingReduction')) + + +class Effect6897(BaseEffect): + """ + subsystemMPTFittingReduction + + Used by: + Subsystem: Loki Offensive - Projectile Scoping Array + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'power', src.getModifiedItemAttr('subsystemMPTFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Projectile Turret'), + 'cpu', src.getModifiedItemAttr('subsystemMPTFittingReduction')) + + +class Effect6898(BaseEffect): + """ + subsystemMRARFittingReduction + + Used by: + Subsystems named like: Offensive Support Processor (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems') and + mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, + 'cpu', src.getModifiedItemAttr('subsystemMRARFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems') and + mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, + 'power', src.getModifiedItemAttr('subsystemMRARFittingReduction')) + + +class Effect6899(BaseEffect): + """ + subsystemMRSBFittingReduction + + Used by: + Subsystem: Loki Offensive - Support Processor + Subsystem: Tengu Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') and + mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, + 'cpu', src.getModifiedItemAttr('subsystemMRSBFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') and + mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, + 'power', src.getModifiedItemAttr('subsystemMRSBFittingReduction')) + + +class Effect6900(BaseEffect): + """ + subsystemMMissileFittingReduction + + Used by: + Subsystem: Legion Offensive - Assault Optimization + Subsystem: Loki Offensive - Launcher Efficiency Configuration + Subsystem: Tengu Offensive - Accelerated Ejection Bay + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Missile Launcher Heavy', 'Missile Launcher Rapid Light', 'Missile Launcher Heavy Assault') + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'cpu', src.getModifiedItemAttr('subsystemMMissileFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, + 'power', src.getModifiedItemAttr('subsystemMMissileFittingReduction')) + + +class Effect6908(BaseEffect): + """ + shipBonusStrategicCruiserCaldariNaniteRepairTime2 + + Used by: + Ship: Tengu + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'moduleRepairRate', + ship.getModifiedItemAttr('shipBonusStrategicCruiserCaldari2'), + skill='Caldari Strategic Cruiser') + + +class Effect6909(BaseEffect): + """ + shipBonusStrategicCruiserAmarrNaniteRepairTime2 + + Used by: + Ship: Legion + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'moduleRepairRate', + ship.getModifiedItemAttr('shipBonusStrategicCruiserAmarr2'), + skill='Amarr Strategic Cruiser') + + +class Effect6910(BaseEffect): + """ + shipBonusStrategicCruiserGallenteNaniteRepairTime2 + + Used by: + Ship: Proteus + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'moduleRepairRate', + ship.getModifiedItemAttr('shipBonusStrategicCruiserGallente2'), + skill='Gallente Strategic Cruiser') + + +class Effect6911(BaseEffect): + """ + shipBonusStrategicCruiserMinmatarNaniteRepairTime2 + + Used by: + Ship: Loki + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: True, 'moduleRepairRate', + ship.getModifiedItemAttr('shipBonusStrategicCruiserMinmatar2'), + skill='Minmatar Strategic Cruiser') + + +class Effect6920(BaseEffect): + """ + structureHPBonusAddPassive + + Used by: + Subsystems named like: Defensive Covert Reconfiguration (4 of 4) + Subsystem: Loki Defensive - Adaptive Defense Node + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.increaseItemAttr('hp', module.getModifiedItemAttr('structureHPBonusAdd') or 0) + + +class Effect6921(BaseEffect): + """ + subSystemBonusAmarrDefensive2ScanProbeStrength + + Used by: + Subsystem: Legion Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseSensorStrength', src.getModifiedItemAttr('subsystemBonusAmarrDefensive2'), + skill='Amarr Defensive Systems') + + +class Effect6923(BaseEffect): + """ + subsystemBonusMinmatarOffensive1HMLHAMVelo + + Used by: + Subsystem: Loki Offensive - Launcher Efficiency Configuration + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles') or mod.charge.requiresSkill('Heavy Assault Missiles'), + 'maxVelocity', container.getModifiedItemAttr('subsystemBonusMinmatarOffensive'), + skill='Minmatar Offensive Systems') + + +class Effect6924(BaseEffect): + """ + subsystemBonusMinmatarOffensive3MissileExpVelo + + Used by: + Subsystem: Loki Offensive - Launcher Efficiency Configuration + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), + 'aoeVelocity', container.getModifiedItemAttr('subsystemBonusMinmatarOffensive3'), + skill='Minmatar Offensive Systems') + + +class Effect6925(BaseEffect): + """ + subsystemBonusGallenteOffensive2DroneVeloTracking + + Used by: + Subsystem: Proteus Offensive - Drone Synthesis Projector + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'maxVelocity', src.getModifiedItemAttr('subsystemBonusGallenteOffensive2'), + skill='Gallente Offensive Systems') + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), + 'trackingSpeed', src.getModifiedItemAttr('subsystemBonusGallenteOffensive2'), + skill='Gallente Offensive Systems') + + +class Effect6926(BaseEffect): + """ + subsystemBonusAmarrPropulsionWarpCapacitor + + Used by: + Subsystem: Legion Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpCapacitorNeed', src.getModifiedItemAttr('subsystemBonusAmarrPropulsion'), skill='Amarr Propulsion Systems') + + +class Effect6927(BaseEffect): + """ + subsystemBonusMinmatarPropulsionWarpCapacitor + + Used by: + Subsystem: Loki Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpCapacitorNeed', src.getModifiedItemAttr('subsystemBonusMinmatarPropulsion'), + skill='Minmatar Propulsion Systems') + + +class Effect6928(BaseEffect): + """ + subsystemBonusCaldariPropulsion2PropModHeatBenefit + + Used by: + Subsystem: Tengu Propulsion - Fuel Catalyst + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner') or mod.item.requiresSkill('High Speed Maneuvering'), + 'overloadSpeedFactorBonus', src.getModifiedItemAttr('subsystemBonusCaldariPropulsion2'), + skill='Caldari Propulsion Systems') + + +class Effect6929(BaseEffect): + """ + subsystemBonusGallentePropulsion2PropModHeatBenefit + + Used by: + Subsystem: Proteus Propulsion - Localized Injectors + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner') or mod.item.requiresSkill('High Speed Maneuvering'), + 'overloadSpeedFactorBonus', src.getModifiedItemAttr('subsystemBonusGallentePropulsion2'), + skill='Gallente Propulsion Systems') + + +class Effect6930(BaseEffect): + """ + subsystemBonusAmarrCore2EnergyResistance + + Used by: + Subsystem: Legion Core - Augmented Antimatter Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('energyWarfareResistance', src.getModifiedItemAttr('subsystemBonusAmarrCore2'), skill='Amarr Core Systems') + + +class Effect6931(BaseEffect): + """ + subsystemBonusMinmatarCore2EnergyResistance + + Used by: + Subsystem: Loki Core - Augmented Nuclear Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('energyWarfareResistance', src.getModifiedItemAttr('subsystemBonusMinmatarCore2'), + skill='Minmatar Core Systems') + + +class Effect6932(BaseEffect): + """ + subsystemBonusGallenteCore2EnergyResistance + + Used by: + Subsystem: Proteus Core - Augmented Fusion Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('energyWarfareResistance', src.getModifiedItemAttr('subsystemBonusGallenteCore2'), + skill='Gallente Core Systems') + + +class Effect6933(BaseEffect): + """ + subsystemBonusCaldariCore2EnergyResistance + + Used by: + Subsystem: Tengu Core - Augmented Graviton Reactor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('energyWarfareResistance', src.getModifiedItemAttr('subsystemBonusCaldariCore2'), + skill='Caldari Core Systems') + + +class Effect6934(BaseEffect): + """ + shipMaxLockedTargetsBonusAddPassive + + Used by: + Subsystems named like: Core Dissolution Sequencer (2 of 2) + Subsystems named like: Core Electronic Efficiency Gate (2 of 2) + Subsystems named like: Offensive Support Processor (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('maxLockedTargets', src.getModifiedItemAttr('maxLockedTargetsBonus')) + + +class Effect6935(BaseEffect): + """ + subsystemBonusAmarrCore3EnergyWarHeatBonus + + Used by: + Subsystem: Legion Core - Energy Parasitic Complex + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Energy Nosferatu', 'Energy Neutralizer'), 'overloadSelfDurationBonus', + src.getModifiedItemAttr('subsystemBonusAmarrCore3'), skill='Amarr Core Systems') + + +class Effect6936(BaseEffect): + """ + subsystemBonusMinmatarCore3StasisWebHeatBonus + + Used by: + Subsystem: Loki Core - Immobility Drivers + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', + 'overloadRangeBonus', src.getModifiedItemAttr('subsystemBonusMinmatarCore3'), + skill='Minmatar Core Systems') + + +class Effect6937(BaseEffect): + """ + subsystemBonusGallenteCore3WarpScramHeatBonus + + Used by: + Subsystem: Proteus Core - Friction Extension Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', 'overloadRangeBonus', + src.getModifiedItemAttr('subsystemBonusGallenteCore3'), skill='Gallente Core Systems') + + +class Effect6938(BaseEffect): + """ + subsystemBonusCaldariCore3ECMHeatBonus + + Used by: + Subsystem: Tengu Core - Obfuscation Manifold + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'ECM', 'overloadECMStrengthBonus', + src.getModifiedItemAttr('subsystemBonusCaldariCore3'), skill='Caldari Core Systems') + + +class Effect6939(BaseEffect): + """ + subsystemBonusAmarrDefensive2HardenerHeat + + Used by: + Subsystem: Legion Defensive - Augmented Plating + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'overloadSelfDurationBonus', + src.getModifiedItemAttr('subsystemBonusAmarrDefensive2'), skill='Amarr Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'overloadHardeningBonus', + src.getModifiedItemAttr('subsystemBonusAmarrDefensive2'), skill='Amarr Defensive Systems') + + +class Effect6940(BaseEffect): + """ + subsystemBonusGallenteDefensive2HardenerHeat + + Used by: + Subsystem: Proteus Defensive - Augmented Plating + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'overloadHardeningBonus', + src.getModifiedItemAttr('subsystemBonusGallenteDefensive2'), skill='Gallente Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'overloadSelfDurationBonus', + src.getModifiedItemAttr('subsystemBonusGallenteDefensive2'), skill='Gallente Defensive Systems') + + +class Effect6941(BaseEffect): + """ + subsystemBonusCaldariDefensive2HardenerHeat + + Used by: + Subsystem: Tengu Defensive - Supplemental Screening + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Tactical Shield Manipulation'), + 'overloadHardeningBonus', src.getModifiedItemAttr('subsystemBonusCaldariDefensive2'), + skill='Caldari Defensive Systems') + + +class Effect6942(BaseEffect): + """ + subsystemBonusMinmatarDefensive2HardenerHeat + + Used by: + Subsystem: Loki Defensive - Augmented Durability + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'overloadSelfDurationBonus', + src.getModifiedItemAttr('subsystemBonusMinmatarDefensive2'), skill='Minmatar Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Hull Upgrades'), 'overloadHardeningBonus', + src.getModifiedItemAttr('subsystemBonusMinmatarDefensive2'), skill='Minmatar Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Tactical Shield Manipulation'), 'overloadHardeningBonus', + src.getModifiedItemAttr('subsystemBonusMinmatarDefensive2'), skill='Minmatar Defensive Systems') + + +class Effect6943(BaseEffect): + """ + subsystemBonusAmarrDefensive3ArmorRepHeat + + Used by: + Subsystem: Legion Defensive - Covert Reconfiguration + Subsystem: Legion Defensive - Nanobot Injector + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'overloadSelfDurationBonus', src.getModifiedItemAttr('subsystemBonusAmarrDefensive3'), + skill='Amarr Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'overloadArmorDamageAmount', src.getModifiedItemAttr('subsystemBonusAmarrDefensive3'), + skill='Amarr Defensive Systems') + + +class Effect6944(BaseEffect): + """ + subsystemBonusGallenteDefensive3ArmorRepHeat + + Used by: + Subsystem: Proteus Defensive - Covert Reconfiguration + Subsystem: Proteus Defensive - Nanobot Injector + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'overloadSelfDurationBonus', src.getModifiedItemAttr('subsystemBonusGallenteDefensive3'), + skill='Gallente Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), + 'overloadArmorDamageAmount', src.getModifiedItemAttr('subsystemBonusGallenteDefensive3'), + skill='Gallente Defensive Systems') + + +class Effect6945(BaseEffect): + """ + subsystemBonusCaldariDefensive3ShieldBoostHeat + + Used by: + Subsystem: Tengu Defensive - Amplification Node + Subsystem: Tengu Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'overloadShieldBonus', src.getModifiedItemAttr('subsystemBonusCaldariDefensive3'), + skill='Caldari Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Operation'), + 'overloadSelfDurationBonus', src.getModifiedItemAttr('subsystemBonusCaldariDefensive3'), + skill='Caldari Defensive Systems') + + +class Effect6946(BaseEffect): + """ + subsystemBonusMinmatarDefensive3LocalRepHeat + + Used by: + Subsystem: Loki Defensive - Adaptive Defense Node + Subsystem: Loki Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems') or mod.item.requiresSkill('Shield Operation'), + 'overloadArmorDamageAmount', src.getModifiedItemAttr('subsystemBonusMinmatarDefensive3'), + skill='Minmatar Defensive Systems') + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems') or mod.item.requiresSkill('Shield Operation'), + 'overloadSelfDurationBonus', src.getModifiedItemAttr('subsystemBonusMinmatarDefensive3'), + skill='Minmatar Defensive Systems') + + +class Effect6947(BaseEffect): + """ + subSystemBonusCaldariDefensive2ScanProbeStrength + + Used by: + Subsystem: Tengu Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), + 'baseSensorStrength', src.getModifiedItemAttr('subsystemBonusCaldariDefensive2'), + skill='Caldari Defensive Systems') + + +class Effect6949(BaseEffect): + """ + subSystemBonusGallenteDefensive2ScanProbeStrength + + Used by: + Subsystem: Proteus Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), 'baseSensorStrength', + src.getModifiedItemAttr('subsystemBonusGallenteDefensive2'), skill='Gallente Defensive Systems') + + +class Effect6951(BaseEffect): + """ + subSystemBonusMinmatarDefensive2ScanProbeStrength + + Used by: + Subsystem: Loki Defensive - Covert Reconfiguration + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), 'baseSensorStrength', + src.getModifiedItemAttr('subsystemBonusMinmatarDefensive2'), skill='Minmatar Defensive Systems') + + +class Effect6953(BaseEffect): + """ + mediumRemoteRepFittingAdjustment + + Used by: + Variations of module: Medium Remote Armor Repairer I (12 of 12) + Variations of module: Medium Remote Shield Booster I (11 of 11) + Module: Medium Ancillary Remote Armor Repairer + Module: Medium Ancillary Remote Shield Booster + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + module.multiplyItemAttr('power', module.getModifiedItemAttr('mediumRemoteRepFittingMultiplier')) + module.multiplyItemAttr('cpu', module.getModifiedItemAttr('mediumRemoteRepFittingMultiplier')) + + +class Effect6954(BaseEffect): + """ + subsystemBonusCommandBurstFittingReduction + + Used by: + Subsystems named like: Offensive Support Processor (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), 'power', + src.getModifiedItemAttr('subsystemCommandBurstFittingReduction')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Leadership'), 'cpu', + src.getModifiedItemAttr('subsystemCommandBurstFittingReduction')) + + +class Effect6955(BaseEffect): + """ + subsystemRemoteShieldBoostFalloffBonus + + Used by: + Subsystem: Loki Offensive - Support Processor + Subsystem: Tengu Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Remote Shield Booster', 'Ancillary Remote Shield Booster'), + 'falloffEffectiveness', src.getModifiedItemAttr('remoteShieldBoosterFalloffBonus')) + + +class Effect6956(BaseEffect): + """ + subsystemRemoteArmorRepairerOptimalBonus + + Used by: + Subsystems named like: Offensive Support Processor (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Remote Armor Repairer', 'Ancillary Remote Armor Repairer'), + 'maxRange', src.getModifiedItemAttr('remoteArmorRepairerOptimalBonus')) + + +class Effect6957(BaseEffect): + """ + subsystemRemoteArmorRepairerFalloffBonus + + Used by: + Subsystems named like: Offensive Support Processor (3 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Remote Armor Repairer', 'Ancillary Remote Armor Repairer'), + 'falloffEffectiveness', src.getModifiedItemAttr('remoteArmorRepairerFalloffBonus')) + + +class Effect6958(BaseEffect): + """ + subsystemBonusAmarrOffensive3RemoteArmorRepairHeat + + Used by: + Subsystem: Legion Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'overloadSelfDurationBonus', + src.getModifiedItemAttr('subsystemBonusAmarrOffensive3'), skill='Amarr Offensive Systems') + + +class Effect6959(BaseEffect): + """ + subsystemBonusGallenteOffensive3RemoteArmorRepairHeat + + Used by: + Subsystem: Proteus Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), 'overloadSelfDurationBonus', + src.getModifiedItemAttr('subsystemBonusGallenteOffensive3'), skill='Gallente Offensive Systems') + + +class Effect6960(BaseEffect): + """ + subsystemBonusCaldariOffensive3RemoteShieldBoosterHeat + + Used by: + Subsystem: Tengu Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems'), + 'overloadSelfDurationBonus', src.getModifiedItemAttr('subsystemBonusCaldariOffensive3'), + skill='Caldari Offensive Systems') + + +class Effect6961(BaseEffect): + """ + subsystemBonusMinmatarOffensive3RemoteRepHeat + + Used by: + Subsystem: Loki Offensive - Support Processor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Shield Emission Systems') or mod.item.requiresSkill('Remote Armor Repair Systems'), + 'overloadSelfDurationBonus', src.getModifiedItemAttr('subsystemBonusMinmatarOffensive3'), + skill='Minmatar Offensive Systems') + + +class Effect6962(BaseEffect): + """ + subsystemBonusAmarrPropulsion2WarpSpeed + + Used by: + Subsystem: Legion Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('subsystemBonusAmarrPropulsion2'), + skill='Amarr Propulsion Systems') + + +class Effect6963(BaseEffect): + """ + subsystemBonusMinmatarPropulsion2WarpSpeed + + Used by: + Subsystem: Loki Propulsion - Interdiction Nullifier + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('subsystemBonusMinmatarPropulsion2'), + skill='Minmatar Propulsion Systems') + + +class Effect6964(BaseEffect): + """ + subsystemBonusGallentePropulsionWarpSpeed + + Used by: + Subsystem: Proteus Propulsion - Hyperspatial Optimization + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('baseWarpSpeed', module.getModifiedItemAttr('subsystemBonusGallentePropulsion'), + skill='Gallente Propulsion Systems') + + +class Effect6981(BaseEffect): + """ + shipBonusTitanG1KinThermDamageBonus + + Used by: + Ship: Komodo + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusTitanG1'), skill='Gallente Titan') + + +class Effect6982(BaseEffect): + """ + shipBonusTitanG2EMExplosiveDamageBonus + + Used by: + Ship: Komodo + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missiles'), 'emDamage', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusTitanG2'), skill='Gallente Titan') + + +class Effect6983(BaseEffect): + """ + shipBonusTitanC1ShieldResists + + Used by: + Ship: Komodo + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('shipBonusTitanC1'), skill='Caldari Titan') + + +class Effect6984(BaseEffect): + """ + shipBonusRole4FighterDamageAndHitpoints + + Used by: + Ship: Caiman + Ship: Komodo + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'shieldCapacity', + src.getModifiedItemAttr('shipBonusRole4')) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityAttackTurretDamageMultiplier', + src.getModifiedItemAttr('shipBonusRole4')) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityAttackMissileDamageMultiplier', + src.getModifiedItemAttr('shipBonusRole4')) + fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill('Fighters'), 'fighterAbilityMissilesDamageMultiplier', + src.getModifiedItemAttr('shipBonusRole4')) + + +class Effect6985(BaseEffect): + """ + shipBonusDreadnoughtG1KinThermDamageBonus + + Used by: + Ship: Caiman + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill('XL Cruise Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusDreadnoughtG1'), skill='Gallente Dreadnought') + + +class Effect6986(BaseEffect): + """ + shipBonusForceAuxiliaryG1RemoteShieldBoostAmount + + Used by: + Ship: Loggerhead + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capital Shield Emission Systems'), 'shieldBonus', + src.getModifiedItemAttr('shipBonusForceAuxiliaryG1'), skill='Gallente Carrier') + + +class Effect6987(BaseEffect): + """ + shipBonusRole2LogisticDroneRepAmountAndHitpointBonus + + Used by: + Ship: Loggerhead + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), + 'structureDamageAmount', src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), + 'shieldBonus', src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), + 'armorDamageAmount', src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), + 'armorHP', src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), + 'shieldCapacity', src.getModifiedItemAttr('shipBonusRole2')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Drone Operation'), + 'hp', src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect6992(BaseEffect): + """ + roleBonusMHTDamage1 + + Used by: + Ship: Victor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), 'damageMultiplier', src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect6993(BaseEffect): + """ + roleBonus2BoosterPenaltyReduction + + Used by: + Ship: Victor + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterMissileAOECloudPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterCapacitorCapacityPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterAOEVelocityPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterArmorRepairAmountPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterMissileVelocityPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterTurretTrackingPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterShieldCapacityPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterTurretOptimalRangePenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterShieldBoostAmountPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterTurretFalloffPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterArmorHPPenalty', src.getModifiedItemAttr('shipBonusRole2')) + fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == 'Booster', 'boosterMaxVelocityPenalty', src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect6994(BaseEffect): + """ + eliteReconBonusMHTDamage1 + + Used by: + Ship: Victor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Hybrid Turret'), 'damageMultiplier', + src.getModifiedItemAttr('eliteBonusReconShip1'), skill='Recon Ships') + + +class Effect6995(BaseEffect): + """ + targetABCAttack + + Used by: + Modules from group: Precursor Weapon (15 of 15) + """ + + type = 'active' + + @staticmethod + def handler(fit, module, context): + # Set reload time to 1 second + module.reloadTime = 1000 + + +class Effect6996(BaseEffect): + """ + eliteReconBonusArmorRepAmount3 + + Used by: + Ship: Victor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), 'armorDamageAmount', + src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect6997(BaseEffect): + """ + eliteCovertOpsBonusArmorRepAmount4 + + Used by: + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Repair Systems'), 'armorDamageAmount', + src.getModifiedItemAttr('eliteBonusCovertOps4'), skill='Covert Ops') + + +class Effect6999(BaseEffect): + """ + covertOpsStealthBomberSiegeMissileLauncherCPUNeedBonus + + Used by: + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', + 'cpu', ship.getModifiedItemAttr('stealthBomberLauncherCPU')) + + +class Effect7000(BaseEffect): + """ + shipBonusSHTFalloffGF1 + + Used by: + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), 'falloff', + src.getModifiedItemAttr('shipBonusGF'), skill='Gallente Frigate') + + +class Effect7001(BaseEffect): + """ + roleBonusTorpRoF1 + + Used by: + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Missile Launcher Torpedo', 'speed', src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect7002(BaseEffect): + """ + roleBonusBombLauncherPWGCPU3 + + Used by: + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Bomb Deployment'), 'power', src.getModifiedItemAttr('shipBonusRole3')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Bomb Deployment'), 'cpu', src.getModifiedItemAttr('shipBonusRole3')) + + +class Effect7003(BaseEffect): + """ + eliteBonusCovertOpsSHTDamage3 + + Used by: + Ship: Virtuoso + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Hybrid Turret'), 'damageMultiplier', + src.getModifiedItemAttr('eliteBonusCovertOps3'), skill='Covert Ops') + + +class Effect7008(BaseEffect): + """ + structureFullPowerStateHitpointModifier + + Used by: + Items from category: Structure (17 of 17) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.multiplyItemAttr('shieldCapacity', src.getModifiedItemAttr('structureFullPowerStateHitpointMultiplier') or 0) + fit.ship.multiplyItemAttr('armorHP', src.getModifiedItemAttr('structureFullPowerStateHitpointMultiplier') or 0) + + +class Effect7009(BaseEffect): + """ + serviceModuleFullPowerHitpointPostAssign + + Used by: + Structure Modules from group: Structure Citadel Service Module (2 of 2) + Structure Modules from group: Structure Engineering Service Module (6 of 6) + Structure Modules from group: Structure Navigation Service Module (3 of 3) + Structure Modules from group: Structure Resource Processing Service Module (4 of 4) + Structure Module: Standup Moon Drill I + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.forceItemAttr('structureFullPowerStateHitpointMultiplier', src.getModifiedItemAttr('serviceModuleFullPowerStateHitpointMultiplier')) + + +class Effect7012(BaseEffect): + """ + moduleBonusAssaultDamageControl + + Used by: + Variations of module: Assault Damage Control I (5 of 5) + """ + + runTime = 'early' + type = 'active' + + @staticmethod + def handler(fit, src, context): + for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): + for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): + bonus = '%s%sDamageResonance' % (attrPrefix, damageType) + bonus = '%s%s' % (bonus[0].lower(), bonus[1:]) + booster = '%s%sDamageResonance' % (layer, damageType) + + src.forceItemAttr(booster, src.getModifiedItemAttr('resistanceMultiplier')) + + +class Effect7013(BaseEffect): + """ + eliteBonusGunshipKineticMissileDamage1 + + Used by: + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'kineticDamage', + src.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect7014(BaseEffect): + """ + eliteBonusGunshipThermalMissileDamage1 + + Used by: + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'thermalDamage', + src.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect7015(BaseEffect): + """ + eliteBonusGunshipEMMissileDamage1 + + Used by: + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'emDamage', + src.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect7016(BaseEffect): + """ + eliteBonusGunshipExplosiveMissileDamage1 + + Used by: + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'explosiveDamage', + src.getModifiedItemAttr('eliteBonusGunship1'), skill='Assault Frigates') + + +class Effect7017(BaseEffect): + """ + eliteBonusGunshipExplosionVelocity2 + + Used by: + Ship: Jaguar + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), 'aoeVelocity', + src.getModifiedItemAttr('eliteBonusGunship2'), stackingPenalties=True, skill='Assault Frigates') + + +class Effect7018(BaseEffect): + """ + shipSETROFAF + + Used by: + Ship: Retribution + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Energy Turret'), 'speed', + src.getModifiedItemAttr('shipBonusAF'), stackingPenalties=False, skill='Amarr Frigate') + + +class Effect7020(BaseEffect): + """ + remoteWebifierMaxRangeBonus + + Used by: + Implants named like: Inquest 'Eros' Stasis Webifier MR (3 of 3) + Implants named like: Inquest 'Hedone' Entanglement Optimizer WS (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'maxRange', + src.getModifiedItemAttr('stasisWebRangeBonus'), stackingPenalties=False) + + +class Effect7021(BaseEffect): + """ + structureRigMaxTargetRange + + Used by: + Structure Modules from group: Structure Combat Rig L - Max Targets and Sensor Boosting (2 of 2) + Structure Modules from group: Structure Combat Rig M - Boosted Sensors (2 of 2) + Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.boostItemAttr('maxTargetRange', module.getModifiedItemAttr('structureRigMaxTargetRangeBonus')) + + +class Effect7024(BaseEffect): + """ + shipBonusDroneTrackingEliteGunship2 + + Used by: + Ship: Ishkur + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'trackingSpeed', + src.getModifiedItemAttr('eliteBonusGunship2'), skill='Assault Frigates') + + +class Effect7026(BaseEffect): + """ + scriptStandupWarpScram + + Used by: + Charge: Standup Focused Warp Scrambling Script + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context, *args, **kwargs): + src.boostItemAttr('maxRange', src.getModifiedChargeAttr('warpScrambleRangeBonus')) + + +class Effect7027(BaseEffect): + """ + structureCapacitorCapacityBonus + + Used by: + Structure Modules from group: Structure Capacitor Battery (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.increaseItemAttr('capacitorCapacity', ship.getModifiedItemAttr('capacitorBonus')) + + +class Effect7028(BaseEffect): + """ + structureModifyPowerRechargeRate + + Used by: + Structure Modules from group: Structure Capacitor Power Relay (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.ship.multiplyItemAttr('rechargeRate', module.getModifiedItemAttr('capacitorRechargeRateMultiplier')) + + +class Effect7029(BaseEffect): + """ + structureArmorHPBonus + + Used by: + Structure Modules from group: Structure Armor Reinforcer (2 of 2) + """ + + runTime = 'early' + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('hiddenArmorHPMultiplier', src.getModifiedItemAttr('armorHpBonus'), stackingPenalties=True) + + +class Effect7030(BaseEffect): + """ + structureAoERoFRoleBonus + + Used by: + Items from category: Structure (11 of 17) + Structures from group: Citadel (8 of 9) + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Guided Bomb Launcher', + 'speed', ship.getModifiedItemAttr('structureAoERoFRoleBonus')) + for attr in ['duration', 'durationTargetIlluminationBurstProjector', 'durationWeaponDisruptionBurstProjector', + 'durationECMJammerBurstProjector', 'durationSensorDampeningBurstProjector', 'capacitorNeed']: + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Burst Projector', + attr, ship.getModifiedItemAttr('structureAoERoFRoleBonus')) + + +class Effect7031(BaseEffect): + """ + shipBonusHeavyMissileKineticDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7032(BaseEffect): + """ + shipBonusHeavyMissileThermalDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7033(BaseEffect): + """ + shipBonusHeavyMissileEMDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), + 'emDamage', src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7034(BaseEffect): + """ + shipBonusHeavyMissileExplosiveDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7035(BaseEffect): + """ + shipBonusHeavyAssaultMissileExplosiveDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7036(BaseEffect): + """ + shipBonusHeavyAssaultMissileEMDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), 'emDamage', + src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7037(BaseEffect): + """ + shipBonusHeavyAssaultMissileThermalDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'thermalDamage', src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7038(BaseEffect): + """ + shipBonusHeavyAssaultMissileKineticDamageCBC2 + + Used by: + Ship: Drake Navy Issue + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Assault Missiles'), + 'kineticDamage', src.getModifiedItemAttr('shipBonusCBC2'), skill='Caldari Battlecruiser') + + +class Effect7039(BaseEffect): + """ + structureHiddenMissileDamageMultiplier + + Used by: + Items from category: Structure (14 of 17) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + groups = ('Structure Anti-Subcapital Missile', 'Structure Anti-Capital Missile') + for dmgType in ('em', 'kinetic', 'explosive', 'thermal'): + fit.modules.filteredChargeMultiply(lambda mod: mod.item.group.name in groups, + '%sDamage' % dmgType, + src.getModifiedItemAttr('hiddenMissileDamageMultiplier')) + + +class Effect7040(BaseEffect): + """ + structureHiddenArmorHPMultiplier + + Used by: + Items from category: Structure (17 of 17) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.multiplyItemAttr('armorHP', src.getModifiedItemAttr('hiddenArmorHPMultiplier') or 0) + + +class Effect7042(BaseEffect): + """ + shipArmorHitPointsAC1 + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('armorHP', src.getModifiedItemAttr('shipBonusAC'), skill='Amarr Cruiser') + + +class Effect7043(BaseEffect): + """ + shipShieldHitpointsCC1 + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('shieldCapacity', src.getModifiedItemAttr('shipBonusCC'), skill='Caldari Cruiser') + + +class Effect7044(BaseEffect): + """ + shipAgilityBonusGC1 + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('agility', src.getModifiedItemAttr('shipBonusGC'), skill='Gallente Cruiser') + + +class Effect7045(BaseEffect): + """ + shipSignatureRadiusMC1 + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('signatureRadius', src.getModifiedItemAttr('shipBonusMC'), skill='Minmatar Cruiser') + + +class Effect7046(BaseEffect): + """ + eliteBonusFlagCruiserAllResistances1 + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('explosiveDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('shieldKineticDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('shieldExplosiveDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('armorThermalDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('thermalDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('shieldEmDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('armorExplosiveDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('armorEmDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('shieldThermalDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('kineticDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('armorKineticDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + fit.ship.boostItemAttr('emDamageResonance', src.getModifiedItemAttr('eliteBonusFlagCruisers1'), skill='Flag Cruisers') + + +class Effect7047(BaseEffect): + """ + roleBonusFlagCruiserModuleFittingReduction + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Propulsion Module', 'Micro Jump Drive'), + 'power', src.getModifiedItemAttr('flagCruiserFittingBonusPropMods')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Propulsion Module', 'Micro Jump Drive'), + 'cpu', src.getModifiedItemAttr('flagCruiserFittingBonusPropMods')) + + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Target Painter', 'Scan Probe Launcher'), + 'cpu', src.getModifiedItemAttr('flagCruiserFittingBonusPainterProbes')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ('Target Painter', 'Scan Probe Launcher'), + 'power', src.getModifiedItemAttr('flagCruiserFittingBonusPainterProbes')) + + +class Effect7050(BaseEffect): + """ + aoe_beacon_bioluminescence_cloud + + Used by: + Celestials named like: Bioluminescence Cloud (3 of 3) + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7051(BaseEffect): + """ + aoe_beacon_caustic_cloud + + Used by: + Celestials named like: Caustic Cloud (3 of 3) + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7052(BaseEffect): + """ + roleBonusFlagCruiserTargetPainterModifications + + Used by: + Ship: Monitor + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', 'signatureRadiusBonus', + src.getModifiedItemAttr('targetPainterStrengthModifierFlagCruisers')) + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Target Painter', 'maxRange', + src.getModifiedItemAttr('targetPainterRangeModifierFlagCruisers')) + + +class Effect7055(BaseEffect): + """ + shipLargeWeaponsDamageBonus + + Used by: + Ship: Praxis + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Hybrid Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Projectile Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Energy Turret'), 'damageMultiplier', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'emDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Heavy Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'emDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Torpedoes'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), 'thermalDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), 'explosiveDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), 'kineticDamage', + src.getModifiedItemAttr('shipBonusRole7')) + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Cruise Missiles'), 'emDamage', + src.getModifiedItemAttr('shipBonusRole7')) + + +class Effect7058(BaseEffect): + """ + aoe_beacon_filament_cloud + + Used by: + Celestials named like: Filament Cloud (3 of 3) + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7059(BaseEffect): + """ + weather_caustic_toxin + + Used by: + Celestial: caustic_toxin_weather_1 + Celestial: caustic_toxin_weather_2 + Celestial: caustic_toxin_weather_3 + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7060(BaseEffect): + """ + weather_darkness + + Used by: + Celestial: darkness_weather_1 + Celestial: darkness_weather_2 + Celestial: darkness_weather_3 + Celestial: pvp_weather_1 + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 5): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7061(BaseEffect): + """ + weather_electric_storm + + Used by: + Celestial: electric_storm_weather_1 + Celestial: electric_storm_weather_2 + Celestial: electric_storm_weather_3 + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7062(BaseEffect): + """ + weather_infernal + + Used by: + Celestial: infernal_weather_1 + Celestial: infernal_weather_2 + Celestial: infernal_weather_3 + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7063(BaseEffect): + """ + weather_xenon_gas + + Used by: + Celestial: xenon_gas_weather_1 + Celestial: xenon_gas_weather_2 + Celestial: xenon_gas_weather_3 + """ + + runTime = 'early' + type = ('projected', 'passive', 'gang') + + @staticmethod + def handler(fit, beacon, context, **kwargs): + for x in range(1, 3): + if beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)): + value = beacon.getModifiedItemAttr('warfareBuff{}Value'.format(x)) + id = beacon.getModifiedItemAttr('warfareBuff{}ID'.format(x)) + + if id: + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + + +class Effect7064(BaseEffect): + """ + weather_basic + + Used by: + Celestial: basic_weather + """ + + runTime = 'early' + type = ('projected', 'passive') + + +class Effect7071(BaseEffect): + """ + smallPrecursorTurretDmgBonusRequiredSkill + + Used by: + Skill: Small Precursor Weapon + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect7072(BaseEffect): + """ + mediumPrecursorTurretDmgBonusRequiredSkill + + Used by: + Skill: Medium Precursor Weapon + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Precursor Weapon'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect7073(BaseEffect): + """ + largePrecursorTurretDmgBonusRequiredSkill + + Used by: + Skill: Large Precursor Weapon + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Precursor Weapon'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect7074(BaseEffect): + """ + smallDisintegratorSkillDmgBonus + + Used by: + Skill: Small Disintegrator Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Disintegrator Specialization'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect7075(BaseEffect): + """ + mediumDisintegratorSkillDmgBonus + + Used by: + Skill: Medium Disintegrator Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Disintegrator Specialization'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect7076(BaseEffect): + """ + largeDisintegratorSkillDmgBonus + + Used by: + Skill: Large Disintegrator Specialization + """ + + type = 'passive' + + @staticmethod + def handler(fit, container, context): + level = container.level if 'skill' in context else 1 + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Disintegrator Specialization'), + 'damageMultiplier', container.getModifiedItemAttr('damageMultiplierBonus') * level) + + +class Effect7077(BaseEffect): + """ + disintegratorWeaponDamageMultiply + + Used by: + Modules from group: Entropic Radiation Sink (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Precursor Weapon', + 'damageMultiplier', module.getModifiedItemAttr('damageMultiplier'), + stackingPenalties=True) + + +class Effect7078(BaseEffect): + """ + disintegratorWeaponSpeedMultiply + + Used by: + Modules from group: Entropic Radiation Sink (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == 'Precursor Weapon', + 'speed', module.getModifiedItemAttr('speedMultiplier'), + stackingPenalties=True) + + +class Effect7079(BaseEffect): + """ + shipPCBSSPeedBonusPCBS1 + + Used by: + Ship: Leshak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Precursor Weapon'), + 'speed', ship.getModifiedItemAttr('shipBonusPBS1'), skill='Precursor Battleship') + + +class Effect7080(BaseEffect): + """ + shipPCBSDmgBonusPCBS2 + + Used by: + Ship: Leshak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Large Precursor Weapon'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusPBS2'), skill='Precursor Battleship') + + +class Effect7085(BaseEffect): + """ + shipbonusPCTDamagePC1 + + Used by: + Ship: Tiamat + Ship: Vedmak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Precursor Weapon'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusPC1'), skill='Precursor Cruiser') + + +class Effect7086(BaseEffect): + """ + shipbonusPCTTrackingPC2 + + Used by: + Ship: Tiamat + Ship: Vedmak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Precursor Weapon'), + 'trackingSpeed', ship.getModifiedItemAttr('shipBonusPC2'), skill='Precursor Cruiser') + + +class Effect7087(BaseEffect): + """ + shipbonusPCTOptimalPF2 + + Used by: + Ship: Damavik + Ship: Hydra + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'maxRange', ship.getModifiedItemAttr('shipBonusPF2'), skill='Precursor Frigate') + + +class Effect7088(BaseEffect): + """ + shipbonusPCTDamagePF1 + + Used by: + Ship: Damavik + Ship: Hydra + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusPF1'), skill='Precursor Frigate') + + +class Effect7091(BaseEffect): + """ + shipBonusNosNeutCapNeedRoleBonus2 + + Used by: + Variations of ship: Rodiva (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Capacitor Emission Systems'), 'capacitorNeed', src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect7092(BaseEffect): + """ + shipBonusRemoteRepCapNeedRoleBonus2 + + Used by: + Ship: Damavik + Ship: Drekavac + Ship: Hydra + Ship: Kikimora + Ship: Leshak + Ship: Tiamat + Ship: Vedmak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusRole2')) + + +class Effect7093(BaseEffect): + """ + shipBonusSmartbombCapNeedRoleBonus2 + + Used by: + Variations of ship: Rodiva (2 of 2) + Ship: Damavik + Ship: Drekavac + Ship: Hydra + Ship: Kikimora + Ship: Leshak + Ship: Tiamat + Ship: Vedmak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Energy Pulse Weapons'), + 'capacitorNeed', ship.getModifiedItemAttr('shipBonusRole2')) + + +class Effect7094(BaseEffect): + """ + shipBonusRemoteRepMaxRangeRoleBonus1 + + Used by: + Ship: Damavik + Ship: Drekavac + Ship: Hydra + Ship: Kikimora + Ship: Leshak + Ship: Tiamat + Ship: Vedmak + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Remote Armor Repair Systems'), + 'maxRange', ship.getModifiedItemAttr('shipBonusRole1')) + + +class Effect7097(BaseEffect): + """ + surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupPrecursorTurret + + Used by: + Skill: Surgical Strike + """ + + type = 'passive' + + @staticmethod + def handler(fit, skill, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Precursor Weapon', + 'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level) + + +class Effect7111(BaseEffect): + """ + systemSmallPrecursorTurretDamage + + Used by: + Celestials named like: Wolf Rayet Effect Beacon Class (5 of 6) + """ + + runTime = 'early' + type = ('projected', 'passive') + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'damageMultiplier', module.getModifiedItemAttr('smallWeaponDamageMultiplier'), + stackingPenalties=True) + + +class Effect7112(BaseEffect): + """ + shipBonusNeutCapNeedRoleBonus2 + + Used by: + Ship: Damavik + Ship: Drekavac + Ship: Hydra + Ship: Kikimora + Ship: Leshak + Ship: Tiamat + Ship: Vedmak + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Energy Neutralizer', 'capacitorNeed', + src.getModifiedItemAttr('shipBonusRole2')) + + +class Effect7116(BaseEffect): + """ + eliteBonusReconScanProbeStrength2 + + Used by: + Ship: Tiamat + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Astrometrics'), 'baseSensorStrength', + src.getModifiedItemAttr('eliteBonusReconShip2'), skill='Recon Ships') + + +class Effect7117(BaseEffect): + """ + roleBonusWarpSpeed + + Used by: + Ship: Cynabal + Ship: Dramiel + Ship: Leopard + Ship: Machariel + Ship: Victorieux Luxury Yacht + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.ship.boostItemAttr('warpSpeedMultiplier', src.getModifiedItemAttr('shipRoleBonusWarpSpeed')) + + +class Effect7118(BaseEffect): + """ + eliteBonusCovertOps3PCTdamagePerCycle + + Used by: + Ship: Hydra + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), 'damageMultiplierBonusPerCycle', + src.getModifiedItemAttr('eliteBonusCovertOps3'), skill='Covert Ops') + + +class Effect7119(BaseEffect): + """ + eliteBonusReconShip3PCTdamagePerCycle + + Used by: + Ship: Tiamat + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('Medium Precursor Weapon'), 'damageMultiplierBonusPerCycle', + src.getModifiedItemAttr('eliteBonusReconShip3'), skill='Recon Ships') + + +class Effect7142(BaseEffect): + """ + massEntanglerEffect5 + + Used by: + Module: Zero-Point Mass Entangler + """ + + type = 'active' + + @staticmethod + def handler(fit, src, context): + fit.ship.increaseItemAttr('warpScrambleStatus', src.getModifiedItemAttr('warpScrambleStrength')) + fit.ship.boostItemAttr('mass', src.getModifiedItemAttr('massBonusPercentage'), stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), 'speedFactor', + src.getModifiedItemAttr('speedFactorBonus'), stackingPenalties=True) + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Afterburner'), 'speedBoostFactor', + src.getModifiedItemAttr('speedBoostFactorBonus')) + fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill('High Speed Maneuvering'), 'activationBlocked', + src.getModifiedItemAttr('activationBlockedStrenght')) + fit.ship.boostItemAttr('maxVelocity', src.getModifiedItemAttr('maxVelocityBonus'), stackingPenalties=True) + + +class Effect7154(BaseEffect): + """ + shipBonusPD1DisintegratorDamage + + Used by: + Ship: Kikimora + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusPD1'), + skill='Precursor Destroyer') + + +class Effect7155(BaseEffect): + """ + shipBonusPBC1DisintegratorDamage + + Used by: + Ship: Drekavac + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Precursor Weapon'), + 'damageMultiplier', ship.getModifiedItemAttr('shipBonusPBC1'), + skill='Precursor Battlecruiser') + + +class Effect7156(BaseEffect): + """ + smallDisintegratorMaxRangeBonus + + Used by: + Ship: Kikimora + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'maxRange', ship.getModifiedItemAttr('maxRangeBonus')) + + +class Effect7157(BaseEffect): + """ + shipBonusPD2DisintegratorMaxRange + + Used by: + Ship: Kikimora + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Small Precursor Weapon'), + 'maxRange', ship.getModifiedItemAttr('shipBonusPD2'), + skill='Precursor Destroyer') + + +class Effect7158(BaseEffect): + """ + shipArmorKineticResistancePBC2 + + Used by: + Ship: Drekavac + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorKineticDamageResonance', ship.getModifiedItemAttr('shipBonusPBC2'), + skill='Precursor Battlecruiser') + + +class Effect7159(BaseEffect): + """ + shipArmorThermalResistancePBC2 + + Used by: + Ship: Drekavac + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorThermalDamageResonance', ship.getModifiedItemAttr('shipBonusPBC2'), + skill='Precursor Battlecruiser') + + +class Effect7160(BaseEffect): + """ + shipArmorEMResistancePBC2 + + Used by: + Ship: Drekavac + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorEmDamageResonance', ship.getModifiedItemAttr('shipBonusPBC2'), + skill='Precursor Battlecruiser') + + +class Effect7161(BaseEffect): + """ + shipArmorExplosiveResistancePBC2 + + Used by: + Ship: Drekavac + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.ship.boostItemAttr('armorExplosiveDamageResonance', ship.getModifiedItemAttr('shipBonusPBC2'), + skill='Precursor Battlecruiser') + + +class Effect7162(BaseEffect): + """ + shipRoleDisintegratorMaxRangeCBC + + Used by: + Ship: Drekavac + """ + + type = 'passive' + + @staticmethod + def handler(fit, ship, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Medium Precursor Weapon'), + 'maxRange', ship.getModifiedItemAttr('roleBonusCBC')) + + +class Effect7166(BaseEffect): + """ + ShipModuleRemoteArmorMutadaptiveRepairer + + Used by: + Modules from group: Mutadaptive Remote Armor Repairer (5 of 5) + """ + + runTime = 'late' + type = 'projected', 'active' + + @staticmethod + def handler(fit, container, context, **kwargs): + if 'projected' in context: + repAmountBase = container.getModifiedItemAttr('armorDamageAmount') + cycleTime = container.getModifiedItemAttr('duration') / 1000.0 + repSpoolMax = container.getModifiedItemAttr('repairMultiplierBonusMax') + repSpoolPerCycle = container.getModifiedItemAttr('repairMultiplierBonusPerCycle') + defaultSpoolValue = eos.config.settings['globalDefaultSpoolupPercentage'] + spoolType, spoolAmount = resolveSpoolOptions(SpoolOptions(SpoolType.SCALE, defaultSpoolValue, False), container) + rps = repAmountBase * (1 + calculateSpoolup(repSpoolMax, repSpoolPerCycle, cycleTime, spoolType, spoolAmount)[0]) / cycleTime + rpsPreSpool = repAmountBase * (1 + calculateSpoolup(repSpoolMax, repSpoolPerCycle, cycleTime, SpoolType.SCALE, 0)[0]) / cycleTime + rpsFullSpool = repAmountBase * (1 + calculateSpoolup(repSpoolMax, repSpoolPerCycle, cycleTime, SpoolType.SCALE, 1)[0]) / cycleTime + fit.extraAttributes.increase('armorRepair', rps, **kwargs) + fit.extraAttributes.increase('armorRepairPreSpool', rpsPreSpool, **kwargs) + fit.extraAttributes.increase('armorRepairFullSpool', rpsFullSpool, **kwargs) + + +class Effect7167(BaseEffect): + """ + shipBonusRemoteCapacitorTransferRangeRole1 + + Used by: + Variations of ship: Rodiva (2 of 2) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Remote Capacitor Transmitter', 'maxRange', src.getModifiedItemAttr('shipBonusRole1')) + + +class Effect7168(BaseEffect): + """ + shipBonusMutadaptiveRemoteRepairRangeRole3 + + Used by: + Ship: Rodiva + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mutadaptive Remote Armor Repairer', 'maxRange', src.getModifiedItemAttr('shipBonusRole3')) + + +class Effect7169(BaseEffect): + """ + shipBonusMutadaptiveRepAmountPC1 + + Used by: + Ship: Rodiva + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mutadaptive Remote Armor Repairer', 'armorDamageAmount', src.getModifiedItemAttr('shipBonusPC1'), skill='Precursor Cruiser') + + +class Effect7170(BaseEffect): + """ + shipBonusMutadaptiveRepCapNeedPC2 + + Used by: + Ship: Rodiva + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mutadaptive Remote Armor Repairer', 'capacitorNeed', src.getModifiedItemAttr('shipBonusPC2'), skill='Precursor Cruiser') + + +class Effect7171(BaseEffect): + """ + shipBonusMutadaptiveRemoteRepRangePC1 + + Used by: + Ship: Zarmazd + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mutadaptive Remote Armor Repairer', 'maxRange', src.getModifiedItemAttr('shipBonusPC1'), skill='Precursor Cruiser') + + +class Effect7172(BaseEffect): + """ + shipBonusMutadaptiveRemoteRepCapNeedeliteBonusLogisitics1 + + Used by: + Ship: Zarmazd + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mutadaptive Remote Armor Repairer', 'capacitorNeed', src.getModifiedItemAttr('eliteBonusLogistics1'), skill='Logistics Cruisers') + + +class Effect7173(BaseEffect): + """ + shipBonusMutadaptiveRemoteRepAmounteliteBonusLogisitics2 + + Used by: + Ship: Zarmazd + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mutadaptive Remote Armor Repairer', 'armorDamageAmount', src.getModifiedItemAttr('eliteBonusLogistics2'), skill='Logistics Cruisers') + + +class Effect7176(BaseEffect): + """ + skillBonusDroneInterfacingNotFighters + + Used by: + Implant: CreoDron 'Bumblebee' Drone Tuner T10-5D + Implant: CreoDron 'Yellowjacket' Drone Tuner D5-10T + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'damageMultiplier', + src.getModifiedItemAttr('damageMultiplierBonus')) + + +class Effect7177(BaseEffect): + """ + skillBonusDroneDurabilityNotFighters + + Used by: + Implants from group: Cyber Drones (4 of 4) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'hp', + src.getModifiedItemAttr('hullHpBonus')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'armorHP', + src.getModifiedItemAttr('armorHpBonus')) + fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill('Drones'), 'shieldCapacity', + src.getModifiedItemAttr('shieldCapacityBonus')) + + +class Effect7179(BaseEffect): + """ + stripMinerDurationMultiplier + + Used by: + Module: Frostline 'Omnivore' Harvester Upgrade + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Strip Miner', + 'duration', module.getModifiedItemAttr('miningDurationMultiplier')) + + +class Effect7180(BaseEffect): + """ + miningDurationMultiplierOnline + + Used by: + Module: Frostline 'Omnivore' Harvester Upgrade + """ + + type = 'passive' + + @staticmethod + def handler(fit, module, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Mining Laser', + 'duration', module.getModifiedItemAttr('miningDurationMultiplier')) + + +class Effect7183(BaseEffect): + """ + implantWarpScrambleRangeBonus + + Used by: + Implants named like: Inquest 'Hedone' Entanglement Optimizer WS (3 of 3) + """ + + type = 'passive' + + @staticmethod + def handler(fit, src, context): + fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', 'maxRange', + src.getModifiedItemAttr('warpScrambleRangeBonus'), stackingPenalties=False) diff --git a/eos/effects/__init__.py b/eos/effects/__init__.py deleted file mode 100644 index daa8ffc73..000000000 --- a/eos/effects/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# =============================================================================== -# Copyright (C) 2010 Diego Duclos -# 2010 Anton Vorobyov -# -# This file, as well as all files in this folder, are part of eos. -# -# eos is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License as published by -# the Free Software Foundation, either version 2 of the License, or -# (at your option) any later version. -# -# eos is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with eos. If not, see . -# =============================================================================== diff --git a/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py b/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py deleted file mode 100644 index acf8b25e3..000000000 --- a/eos/effects/accerationcontrolcapneedbonuspostpercentcapacitorneedlocationshipgroupafterburner.py +++ /dev/null @@ -1,10 +0,0 @@ -# accerationControlCapNeedBonusPostPercentCapacitorNeedLocationShipGroupAfterburner -# -# Used by: -# Modules named like: Dynamic Fuel Valve (8 of 8) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/accerationcontrolskillabmwdspeedboost.py b/eos/effects/accerationcontrolskillabmwdspeedboost.py deleted file mode 100644 index ef24601d2..000000000 --- a/eos/effects/accerationcontrolskillabmwdspeedboost.py +++ /dev/null @@ -1,12 +0,0 @@ -# accerationControlSkillAb&MwdSpeedBoost -# -# Used by: -# Implant: Zor's Custom Navigation Hyper-Link -# Skill: Acceleration Control -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "speedFactor", container.getModifiedItemAttr("speedFBonus") * level) diff --git a/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py b/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py deleted file mode 100644 index dc38ae5f8..000000000 --- a/eos/effects/accerationcontrolspeedfbonuspostpercentspeedfactorlocationshipgroupafterburner.py +++ /dev/null @@ -1,10 +0,0 @@ -# accerationControlSpeedFBonusPostPercentSpeedFactorLocationShipGroupAfterburner -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' Acceleration Control AC (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "speedFactor", implant.getModifiedItemAttr("speedFBonus")) diff --git a/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py b/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py deleted file mode 100644 index 3fb468dea..000000000 --- a/eos/effects/accessdifficultybonusmodifierrequiringarchaelogy.py +++ /dev/null @@ -1,13 +0,0 @@ -# accessDifficultyBonusModifierRequiringArchaelogy -# -# Used by: -# Modules named like: Emission Scope Sharpener (8 of 8) -# Implant: Poteque 'Prospector' Archaeology AC-905 -# Implant: Poteque 'Prospector' Environmental Analysis EY-1005 -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemIncrease(lambda module: module.item.requiresSkill("Archaeology"), - "accessDifficultyBonus", - container.getModifiedItemAttr("accessDifficultyBonusModifier"), position="post") diff --git a/eos/effects/accessdifficultybonusmodifierrequiringhacking.py b/eos/effects/accessdifficultybonusmodifierrequiringhacking.py deleted file mode 100644 index 2094f08d3..000000000 --- a/eos/effects/accessdifficultybonusmodifierrequiringhacking.py +++ /dev/null @@ -1,14 +0,0 @@ -# accessDifficultyBonusModifierRequiringHacking -# -# Used by: -# Modules named like: Memetic Algorithm Bank (8 of 8) -# Implant: Neural Lace 'Blackglass' Net Intrusion 920-40 -# Implant: Poteque 'Prospector' Environmental Analysis EY-1005 -# Implant: Poteque 'Prospector' Hacking HC-905 -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemIncrease(lambda c: c.item.requiresSkill("Hacking"), - "accessDifficultyBonus", - container.getModifiedItemAttr("accessDifficultyBonusModifier"), position="post") diff --git a/eos/effects/adaptivearmorhardener.py b/eos/effects/adaptivearmorhardener.py deleted file mode 100644 index 25a4335a6..000000000 --- a/eos/effects/adaptivearmorhardener.py +++ /dev/null @@ -1,128 +0,0 @@ -# adaptiveArmorHardener -# -# Used by: -# Module: Reactive Armor Hardener -from logbook import Logger -import eos.config - -pyfalog = Logger(__name__) - -runTime = "late" -type = "active" - - -def handler(fit, module, context): - damagePattern = fit.damagePattern - # pyfalog.debug("==============================") - - static_adaptive_behavior = eos.config.settings['useStaticAdaptiveArmorHardener'] - - if (damagePattern.emAmount == damagePattern.thermalAmount == damagePattern.kineticAmount == damagePattern.explosiveAmount) and static_adaptive_behavior: - # pyfalog.debug("Setting adaptivearmorhardener resists to uniform profile.") - for attr in ("armorEmDamageResonance", "armorThermalDamageResonance", "armorKineticDamageResonance", "armorExplosiveDamageResonance"): - fit.ship.multiplyItemAttr(attr, module.getModifiedItemAttr(attr), stackingPenalties=True, penaltyGroup="preMul") - return - - # Skip if there is no damage pattern. Example: projected ships or fleet boosters - if damagePattern: - - # Populate a tuple with the damage profile modified by current armor resists. - baseDamageTaken = ( - damagePattern.emAmount * fit.ship.getModifiedItemAttr('armorEmDamageResonance'), - damagePattern.thermalAmount * fit.ship.getModifiedItemAttr('armorThermalDamageResonance'), - damagePattern.kineticAmount * fit.ship.getModifiedItemAttr('armorKineticDamageResonance'), - damagePattern.explosiveAmount * fit.ship.getModifiedItemAttr('armorExplosiveDamageResonance'), - ) - # pyfalog.debug("Damage Adjusted for Armor Resists: %f/%f/%f/%f" % (baseDamageTaken[0], baseDamageTaken[1], baseDamageTaken[2], baseDamageTaken[3])) - - resistanceShiftAmount = module.getModifiedItemAttr( - 'resistanceShiftAmount') / 100 # The attribute is in percent and we want a fraction - RAHResistance = [ - module.getModifiedItemAttr('armorEmDamageResonance'), - module.getModifiedItemAttr('armorThermalDamageResonance'), - module.getModifiedItemAttr('armorKineticDamageResonance'), - module.getModifiedItemAttr('armorExplosiveDamageResonance'), - ] - - # Simulate RAH cycles until the RAH either stops changing or enters a loop. - # The number of iterations is limited to prevent an infinite loop if something goes wrong. - cycleList = [] - loopStart = -20 - for num in range(50): - # pyfalog.debug("Starting cycle %d." % num) - # The strange order is to emulate the ingame sorting when different types have taken the same amount of damage. - # This doesn't take into account stacking penalties. In a few cases fitting a Damage Control causes an inaccurate result. - damagePattern_tuples = [ - (0, baseDamageTaken[0] * RAHResistance[0], RAHResistance[0]), - (3, baseDamageTaken[3] * RAHResistance[3], RAHResistance[3]), - (2, baseDamageTaken[2] * RAHResistance[2], RAHResistance[2]), - (1, baseDamageTaken[1] * RAHResistance[1], RAHResistance[1]), - ] - - # Sort the tuple to drop the highest damage value to the bottom - sortedDamagePattern_tuples = sorted(damagePattern_tuples, key=lambda damagePattern: damagePattern[1]) - - if sortedDamagePattern_tuples[2][1] == 0: - # One damage type: the top damage type takes from the other three - # Since the resistances not taking damage will end up going to the type taking damage we just do the whole thing at once. - change0 = 1 - sortedDamagePattern_tuples[0][2] - change1 = 1 - sortedDamagePattern_tuples[1][2] - change2 = 1 - sortedDamagePattern_tuples[2][2] - change3 = -(change0 + change1 + change2) - elif sortedDamagePattern_tuples[1][1] == 0: - # Two damage types: the top two damage types take from the other two - # Since the resistances not taking damage will end up going equally to the types taking damage we just do the whole thing at once. - change0 = 1 - sortedDamagePattern_tuples[0][2] - change1 = 1 - sortedDamagePattern_tuples[1][2] - change2 = -(change0 + change1) / 2 - change3 = -(change0 + change1) / 2 - else: - # Three or four damage types: the top two damage types take from the other two - change0 = min(resistanceShiftAmount, 1 - sortedDamagePattern_tuples[0][2]) - change1 = min(resistanceShiftAmount, 1 - sortedDamagePattern_tuples[1][2]) - change2 = -(change0 + change1) / 2 - change3 = -(change0 + change1) / 2 - - RAHResistance[sortedDamagePattern_tuples[0][0]] = sortedDamagePattern_tuples[0][2] + change0 - RAHResistance[sortedDamagePattern_tuples[1][0]] = sortedDamagePattern_tuples[1][2] + change1 - RAHResistance[sortedDamagePattern_tuples[2][0]] = sortedDamagePattern_tuples[2][2] + change2 - RAHResistance[sortedDamagePattern_tuples[3][0]] = sortedDamagePattern_tuples[3][2] + change3 - # pyfalog.debug("Resistances shifted to %f/%f/%f/%f" % ( RAHResistance[0], RAHResistance[1], RAHResistance[2], RAHResistance[3])) - - # See if the current RAH profile has been encountered before, indicating a loop. - for i, val in enumerate(cycleList): - tolerance = 1e-06 - if abs(RAHResistance[0] - val[0]) <= tolerance and \ - abs(RAHResistance[1] - val[1]) <= tolerance and \ - abs(RAHResistance[2] - val[2]) <= tolerance and \ - abs(RAHResistance[3] - val[3]) <= tolerance: - loopStart = i - # pyfalog.debug("Loop found: %d-%d" % (loopStart, num)) - break - if loopStart >= 0: - break - - cycleList.append(list(RAHResistance)) - - # if loopStart < 0: - # pyfalog.error("Reactive Armor Hardener failed to find equilibrium. Damage profile after armor: {0}/{1}/{2}/{3}".format( - # baseDamageTaken[0], baseDamageTaken[1], baseDamageTaken[2], baseDamageTaken[3])) - - # Average the profiles in the RAH loop, or the last 20 if it didn't find a loop. - loopCycles = cycleList[loopStart:] - numCycles = len(loopCycles) - average = [0, 0, 0, 0] - for cycle in loopCycles: - for i in range(4): - average[i] += cycle[i] - - for i in range(4): - average[i] = round(average[i] / numCycles, 3) - - # Set the new resistances - # pyfalog.debug("Setting new resist profile: %f/%f/%f/%f" % ( average[0], average[1], average[2],average[3])) - for i, attr in enumerate(( - 'armorEmDamageResonance', 'armorThermalDamageResonance', 'armorKineticDamageResonance', - 'armorExplosiveDamageResonance')): - module.increaseItemAttr(attr, average[i] - module.getModifiedItemAttr(attr)) - fit.ship.multiplyItemAttr(attr, average[i], stackingPenalties=True, penaltyGroup="preMul") diff --git a/eos/effects/addtosignatureradius2.py b/eos/effects/addtosignatureradius2.py deleted file mode 100644 index 6c790a925..000000000 --- a/eos/effects/addtosignatureradius2.py +++ /dev/null @@ -1,10 +0,0 @@ -# addToSignatureRadius2 -# -# Used by: -# Modules from group: Missile Launcher Bomb (2 of 2) -# Modules from group: Shield Extender (36 of 36) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusAdd")) diff --git a/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py b/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py deleted file mode 100644 index 1d1b9c309..000000000 --- a/eos/effects/afterburnerdurationbonuspostpercentdurationlocationshipmodulesrequiringafterburner.py +++ /dev/null @@ -1,13 +0,0 @@ -# afterburnerDurationBonusPostPercentDurationLocationShipModulesRequiringAfterburner -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' Afterburner AB (6 of 6) -# Implant: Zor's Custom Navigation Link -# Skill: Afterburner -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "duration", container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/agilitybonus.py b/eos/effects/agilitybonus.py deleted file mode 100644 index ea3811650..000000000 --- a/eos/effects/agilitybonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# agilityBonus -# -# Used by: -# Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("agility", src.getModifiedItemAttr("agilityBonusAdd")) diff --git a/eos/effects/agilitymultipliereffect.py b/eos/effects/agilitymultipliereffect.py deleted file mode 100644 index fe8b37aa4..000000000 --- a/eos/effects/agilitymultipliereffect.py +++ /dev/null @@ -1,13 +0,0 @@ -# agilityMultiplierEffect -# -# Used by: -# Modules from group: Inertial Stabilizer (7 of 7) -# Modules from group: Nanofiber Internal Structure (7 of 7) -# Modules from group: Reinforced Bulkhead (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("agility", - module.getModifiedItemAttr("agilityMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/agilitymultipliereffectpassive.py b/eos/effects/agilitymultipliereffectpassive.py deleted file mode 100644 index d185a5002..000000000 --- a/eos/effects/agilitymultipliereffectpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# agilityMultiplierEffectPassive -# -# Used by: -# Modules named like: Polycarbon Engine Housing (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("agility", module.getModifiedItemAttr("agilityBonus"), stackingPenalties=True) diff --git a/eos/effects/ammofallofmultiplier.py b/eos/effects/ammofallofmultiplier.py deleted file mode 100644 index 4f4f5e86f..000000000 --- a/eos/effects/ammofallofmultiplier.py +++ /dev/null @@ -1,14 +0,0 @@ -# ammoFallofMultiplier -# -# Used by: -# Charges from group: Advanced Artillery Ammo (8 of 8) -# Charges from group: Advanced Autocannon Ammo (8 of 8) -# Charges from group: Advanced Beam Laser Crystal (8 of 8) -# Charges from group: Advanced Blaster Charge (8 of 8) -# Charges from group: Advanced Pulse Laser Crystal (8 of 8) -# Charges from group: Advanced Railgun Charge (8 of 8) -type = "passive" - - -def handler(fit, module, context): - module.multiplyItemAttr("falloff", module.getModifiedChargeAttr("fallofMultiplier") or 1) diff --git a/eos/effects/ammoinfluencecapneed.py b/eos/effects/ammoinfluencecapneed.py deleted file mode 100644 index 3bbb1103c..000000000 --- a/eos/effects/ammoinfluencecapneed.py +++ /dev/null @@ -1,13 +0,0 @@ -# ammoInfluenceCapNeed -# -# Used by: -# Items from category: Charge (493 of 949) -type = "passive" - - -def handler(fit, module, context): - # Dirty hack to work around cap charges setting cap booster - # injection amount to zero - rawAttr = module.item.getAttribute("capacitorNeed") - if rawAttr is not None and rawAttr >= 0: - module.boostItemAttr("capacitorNeed", module.getModifiedChargeAttr("capNeedBonus") or 0) diff --git a/eos/effects/ammoinfluencerange.py b/eos/effects/ammoinfluencerange.py deleted file mode 100644 index 58c331911..000000000 --- a/eos/effects/ammoinfluencerange.py +++ /dev/null @@ -1,9 +0,0 @@ -# ammoInfluenceRange -# -# Used by: -# Items from category: Charge (587 of 949) -type = "passive" - - -def handler(fit, module, context): - module.multiplyItemAttr("maxRange", module.getModifiedChargeAttr("weaponRangeMultiplier")) diff --git a/eos/effects/ammospeedmultiplier.py b/eos/effects/ammospeedmultiplier.py deleted file mode 100644 index 093953c11..000000000 --- a/eos/effects/ammospeedmultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# ammoSpeedMultiplier -# -# Used by: -# Charges from group: Festival Charges (26 of 26) -# Charges from group: Interdiction Probe (2 of 2) -# Items from market group: Special Edition Assets > Special Edition Festival Assets (30 of 33) -type = "passive" - - -def handler(fit, module, context): - module.multiplyItemAttr("speed", module.getModifiedChargeAttr("speedMultiplier") or 1) diff --git a/eos/effects/ammotrackingmultiplier.py b/eos/effects/ammotrackingmultiplier.py deleted file mode 100644 index 95033d743..000000000 --- a/eos/effects/ammotrackingmultiplier.py +++ /dev/null @@ -1,10 +0,0 @@ -# ammoTrackingMultiplier -# -# Used by: -# Items from category: Charge (182 of 949) -# Charges from group: Projectile Ammo (128 of 128) -type = "passive" - - -def handler(fit, module, context): - module.multiplyItemAttr("trackingSpeed", module.getModifiedChargeAttr("trackingSpeedMultiplier")) diff --git a/eos/effects/angelsetbonus.py b/eos/effects/angelsetbonus.py deleted file mode 100644 index 1591e9be1..000000000 --- a/eos/effects/angelsetbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# angelsetbonus -# -# Used by: -# Implants named like: grade Halo (18 of 18) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply( - lambda implant: "signatureRadiusBonus" in implant.itemModifiedAttributes and - "implantSetAngel" in implant.itemModifiedAttributes, - "signatureRadiusBonus", - implant.getModifiedItemAttr("implantSetAngel")) diff --git a/eos/effects/antiwarpscramblingpassive.py b/eos/effects/antiwarpscramblingpassive.py deleted file mode 100644 index 6a3165c0a..000000000 --- a/eos/effects/antiwarpscramblingpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# antiWarpScramblingPassive -# -# Used by: -# Modules from group: Warp Core Stabilizer (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) diff --git a/eos/effects/aoebeaconbioluminescencecloud.py b/eos/effects/aoebeaconbioluminescencecloud.py deleted file mode 100644 index fa01e217d..000000000 --- a/eos/effects/aoebeaconbioluminescencecloud.py +++ /dev/null @@ -1,16 +0,0 @@ -# aoe_beacon_bioluminescence_cloud -# -# Used by: -# Celestials named like: Bioluminescence Cloud (3 of 3) -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/aoebeaconcausticcloud.py b/eos/effects/aoebeaconcausticcloud.py deleted file mode 100644 index f11c9805b..000000000 --- a/eos/effects/aoebeaconcausticcloud.py +++ /dev/null @@ -1,16 +0,0 @@ -# aoe_beacon_caustic_cloud -# -# Used by: -# Celestials named like: Caustic Cloud (3 of 3) -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/aoebeaconfilamentcloud.py b/eos/effects/aoebeaconfilamentcloud.py deleted file mode 100644 index 085114e7c..000000000 --- a/eos/effects/aoebeaconfilamentcloud.py +++ /dev/null @@ -1,16 +0,0 @@ -# aoe_beacon_filament_cloud -# -# Used by: -# Celestials named like: Filament Cloud (3 of 3) -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/archaeologyskillvirusbonus.py b/eos/effects/archaeologyskillvirusbonus.py deleted file mode 100644 index 9e383ba0a..000000000 --- a/eos/effects/archaeologyskillvirusbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# archaeologySkillVirusBonus -# -# Used by: -# Modules named like: Emission Scope Sharpener (8 of 8) -# Implant: Poteque 'Prospector' Archaeology AC-905 -# Implant: Poteque 'Prospector' Environmental Analysis EY-1005 -# Skill: Archaeology -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Archaeology"), - "virusCoherence", container.getModifiedItemAttr("virusCoherenceBonus") * level) diff --git a/eos/effects/armorallrepairsystemsamountbonuspassive.py b/eos/effects/armorallrepairsystemsamountbonuspassive.py deleted file mode 100644 index 8307ae2ee..000000000 --- a/eos/effects/armorallrepairsystemsamountbonuspassive.py +++ /dev/null @@ -1,13 +0,0 @@ -# armorAllRepairSystemsAmountBonusPassive -# -# Used by: -# Implants named like: Agency 'Hardshell' TB Dose (4 of 4) -# Implants named like: Exile Booster (4 of 4) -# Implant: Antipharmakon Kosybo -type = "passive" - - -def handler(fit, booster, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Capital Repair Systems"), - "armorDamageAmount", booster.getModifiedItemAttr("armorDamageAmountBonus") or 0) diff --git a/eos/effects/armordamageamountbonuscapitalarmorrepairers.py b/eos/effects/armordamageamountbonuscapitalarmorrepairers.py deleted file mode 100644 index 49def1be7..000000000 --- a/eos/effects/armordamageamountbonuscapitalarmorrepairers.py +++ /dev/null @@ -1,11 +0,0 @@ -# armorDamageAmountBonusCapitalArmorRepairers -# -# Used by: -# Modules named like: Auxiliary Nano Pump (8 of 8) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), - "armorDamageAmount", implant.getModifiedItemAttr("repairBonus"), - stackingPenalties=True) diff --git a/eos/effects/armoredcommanddurationbonus.py b/eos/effects/armoredcommanddurationbonus.py deleted file mode 100644 index 171dfbbb2..000000000 --- a/eos/effects/armoredcommanddurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# armoredCommandDurationBonus -# -# Used by: -# Skill: Armored Command -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/armoredcommandmindlink.py b/eos/effects/armoredcommandmindlink.py deleted file mode 100644 index 2e36ed6f0..000000000 --- a/eos/effects/armoredcommandmindlink.py +++ /dev/null @@ -1,20 +0,0 @@ -# armoredCommandMindlink -# -# Used by: -# Implant: Armored Command Mindlink -# Implant: Federation Navy Command Mindlink -# Implant: Imperial Navy Command Mindlink -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "buffDuration", - src.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/armoredcommandstrengthbonus.py b/eos/effects/armoredcommandstrengthbonus.py deleted file mode 100644 index 6bc5e365e..000000000 --- a/eos/effects/armoredcommandstrengthbonus.py +++ /dev/null @@ -1,17 +0,0 @@ -# armoredCommandStrengthBonus -# -# Used by: -# Skill: Armored Command Specialist -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) diff --git a/eos/effects/armorhpbonusadd.py b/eos/effects/armorhpbonusadd.py deleted file mode 100644 index f965b45ae..000000000 --- a/eos/effects/armorhpbonusadd.py +++ /dev/null @@ -1,9 +0,0 @@ -# armorHPBonusAdd -# -# Used by: -# Modules from group: Armor Reinforcer (51 of 51) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("armorHP", module.getModifiedItemAttr("armorHPBonusAdd")) diff --git a/eos/effects/armorhpbonusaddpassive.py b/eos/effects/armorhpbonusaddpassive.py deleted file mode 100644 index 0b5d23866..000000000 --- a/eos/effects/armorhpbonusaddpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# armorHPBonusAddPassive -# -# Used by: -# Subsystems from group: Defensive Systems (9 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("armorHP", module.getModifiedItemAttr("armorHPBonusAdd") or 0) diff --git a/eos/effects/armorhpmultiply.py b/eos/effects/armorhpmultiply.py deleted file mode 100644 index 25039f35f..000000000 --- a/eos/effects/armorhpmultiply.py +++ /dev/null @@ -1,10 +0,0 @@ -# armorHPMultiply -# -# Used by: -# Modules from group: Armor Coating (202 of 202) -# Modules from group: Armor Plating Energized (187 of 187) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("armorHP", module.getModifiedItemAttr("armorHPMultiplier")) diff --git a/eos/effects/armorreinforcermassadd.py b/eos/effects/armorreinforcermassadd.py deleted file mode 100644 index e60326892..000000000 --- a/eos/effects/armorreinforcermassadd.py +++ /dev/null @@ -1,9 +0,0 @@ -# armorReinforcerMassAdd -# -# Used by: -# Modules from group: Armor Reinforcer (51 of 51) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) diff --git a/eos/effects/armorrepair.py b/eos/effects/armorrepair.py deleted file mode 100644 index 07c1926da..000000000 --- a/eos/effects/armorrepair.py +++ /dev/null @@ -1,15 +0,0 @@ -# armorRepair -# -# Used by: -# Modules from group: Armor Repair Unit (108 of 108) -runTime = "late" -type = "active" - - -def handler(fit, module, context): - amount = module.getModifiedItemAttr("armorDamageAmount") - speed = module.getModifiedItemAttr("duration") / 1000.0 - rps = amount / speed - fit.extraAttributes.increase("armorRepair", rps) - fit.extraAttributes.increase("armorRepairPreSpool", rps) - fit.extraAttributes.increase("armorRepairFullSpool", rps) diff --git a/eos/effects/armorrepairamountbonussubcap.py b/eos/effects/armorrepairamountbonussubcap.py deleted file mode 100644 index 725c43f33..000000000 --- a/eos/effects/armorrepairamountbonussubcap.py +++ /dev/null @@ -1,10 +0,0 @@ -# armorRepairAmountBonusSubcap -# -# Used by: -# Implants named like: grade Asklepian (15 of 18) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("armorRepairBonus")) diff --git a/eos/effects/armorrepairprojectorfalloffbonus.py b/eos/effects/armorrepairprojectorfalloffbonus.py deleted file mode 100644 index 6fe69d3b4..000000000 --- a/eos/effects/armorrepairprojectorfalloffbonus.py +++ /dev/null @@ -1,16 +0,0 @@ -# armorRepairProjectorFalloffBonus -# -# Used by: -# Variations of ship: Navitas (2 of 2) -# Ship: Augoror -# Ship: Deacon -# Ship: Exequror -# Ship: Inquisitor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "falloffEffectiveness", - src.getModifiedItemAttr("falloffBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Armor Repairer", - "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) diff --git a/eos/effects/armorrepairprojectormaxrangebonus.py b/eos/effects/armorrepairprojectormaxrangebonus.py deleted file mode 100644 index 60f66763c..000000000 --- a/eos/effects/armorrepairprojectormaxrangebonus.py +++ /dev/null @@ -1,16 +0,0 @@ -# armorRepairProjectorMaxRangeBonus -# -# Used by: -# Variations of ship: Navitas (2 of 2) -# Ship: Augoror -# Ship: Deacon -# Ship: Exequror -# Ship: Inquisitor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Armor Repairer", "maxRange", - src.getModifiedItemAttr("maxRangeBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Armor Repairer", "maxRange", - src.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/armorupgradesmasspenaltyreductionbonus.py b/eos/effects/armorupgradesmasspenaltyreductionbonus.py deleted file mode 100644 index f7bfd67ee..000000000 --- a/eos/effects/armorupgradesmasspenaltyreductionbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# armorUpgradesMassPenaltyReductionBonus -# -# Used by: -# Skill: Armor Layering -type = "passive" - - -def handler(fit, container, context): - level = container.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Reinforcer", - "massAddition", container.getModifiedItemAttr("massPenaltyReduction") * level) diff --git a/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py b/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py deleted file mode 100644 index 965ade57d..000000000 --- a/eos/effects/astrogeologyminingamountbonuspostpercentminingamountlocationshipmodulesrequiringmining.py +++ /dev/null @@ -1,14 +0,0 @@ -# astrogeologyMiningAmountBonusPostPercentMiningAmountLocationShipModulesRequiringMining -# -# Used by: -# Implants named like: Inherent Implants 'Highwall' Mining MX (3 of 3) -# Implant: Michi's Excavation Augmentor -# Skill: Astrogeology -# Skill: Mining -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", container.getModifiedItemAttr("miningAmountBonus") * level) diff --git a/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py b/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py deleted file mode 100644 index 3169597ef..000000000 --- a/eos/effects/basemaxscandeviationmodifiermoduleonline2none.py +++ /dev/null @@ -1,12 +0,0 @@ -# baseMaxScanDeviationModifierModuleOnline2None -# -# Used by: -# Variations of module: Scan Pinpointing Array I (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseMaxScanDeviation", - module.getModifiedItemAttr("maxScanDeviationModifierModule"), - stackingPenalties=True) diff --git a/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py b/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py deleted file mode 100644 index 81724b690..000000000 --- a/eos/effects/basemaxscandeviationmodifierrequiringastrometrics.py +++ /dev/null @@ -1,14 +0,0 @@ -# baseMaxScanDeviationModifierRequiringAstrometrics -# -# Used by: -# Implants named like: Poteque 'Prospector' Astrometric Pinpointing AP (3 of 3) -# Skill: Astrometric Pinpointing -# Skill: Astrometrics -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseMaxScanDeviation", - container.getModifiedItemAttr("maxScanDeviationModifier") * level) diff --git a/eos/effects/basesensorstrengthmodifiermodule.py b/eos/effects/basesensorstrengthmodifiermodule.py deleted file mode 100644 index 5d64ab13a..000000000 --- a/eos/effects/basesensorstrengthmodifiermodule.py +++ /dev/null @@ -1,11 +0,0 @@ -# baseSensorStrengthModifierModule -# -# Used by: -# Variations of module: Scan Rangefinding Array I (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseSensorStrength", module.getModifiedItemAttr("scanStrengthBonusModule"), - stackingPenalties=True) diff --git a/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py b/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py deleted file mode 100644 index 1c302d261..000000000 --- a/eos/effects/basesensorstrengthmodifierrequiringastrometrics.py +++ /dev/null @@ -1,18 +0,0 @@ -# baseSensorStrengthModifierRequiringAstrometrics -# -# Used by: -# Modules from group: Scan Probe Launcher (4 of 7) -# Implants named like: Poteque 'Prospector' Astrometric Rangefinding AR (3 of 3) -# Implants named like: grade Virtue (10 of 12) -# Modules named like: Gravity Capacitor Upgrade (8 of 8) -# Skill: Astrometric Rangefinding -# Skill: Astrometrics -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalized = False if "skill" in context or "implant" in context else True - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseSensorStrength", container.getModifiedItemAttr("scanStrengthBonus") * level, - stackingPenalties=penalized) diff --git a/eos/effects/battlecruiserdronespeed.py b/eos/effects/battlecruiserdronespeed.py deleted file mode 100644 index 5d666f43a..000000000 --- a/eos/effects/battlecruiserdronespeed.py +++ /dev/null @@ -1,11 +0,0 @@ -# battlecruiserDroneSpeed -# -# Used by: -# Ship: Myrmidon -# Ship: Prophecy -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxVelocity", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermetrange.py b/eos/effects/battlecruisermetrange.py deleted file mode 100644 index 3d0e9e2aa..000000000 --- a/eos/effects/battlecruisermetrange.py +++ /dev/null @@ -1,12 +0,0 @@ -# battlecruiserMETRange -# -# Used by: -# Ships named like: Harbinger (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "falloff", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermhtrange.py b/eos/effects/battlecruisermhtrange.py deleted file mode 100644 index 268704d82..000000000 --- a/eos/effects/battlecruisermhtrange.py +++ /dev/null @@ -1,13 +0,0 @@ -# battlecruiserMHTRange -# -# Used by: -# Ships named like: Brutix (2 of 2) -# Ship: Ferox -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermissilerange.py b/eos/effects/battlecruisermissilerange.py deleted file mode 100644 index a095cac39..000000000 --- a/eos/effects/battlecruisermissilerange.py +++ /dev/null @@ -1,11 +0,0 @@ -# battlecruiserMissileRange -# -# Used by: -# Ships named like: Drake (2 of 2) -# Ship: Cyclone -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", skill.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/battlecruisermptrange.py b/eos/effects/battlecruisermptrange.py deleted file mode 100644 index 57f8ebe4a..000000000 --- a/eos/effects/battlecruisermptrange.py +++ /dev/null @@ -1,12 +0,0 @@ -# battlecruiserMPTRange -# -# Used by: -# Ships named like: Hurricane (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/bclargeenergyturretcapacitorneedbonus.py b/eos/effects/bclargeenergyturretcapacitorneedbonus.py deleted file mode 100644 index a4e3036f3..000000000 --- a/eos/effects/bclargeenergyturretcapacitorneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# bcLargeEnergyTurretCapacitorNeedBonus -# -# Used by: -# Ship: Oracle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("bcLargeTurretCap")) diff --git a/eos/effects/bclargeenergyturretcpuneedbonus.py b/eos/effects/bclargeenergyturretcpuneedbonus.py deleted file mode 100644 index a59ed687e..000000000 --- a/eos/effects/bclargeenergyturretcpuneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# bcLargeEnergyTurretCPUNeedBonus -# -# Used by: -# Ship: Oracle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "cpu", ship.getModifiedItemAttr("bcLargeTurretCPU")) diff --git a/eos/effects/bclargeenergyturretpowerneedbonus.py b/eos/effects/bclargeenergyturretpowerneedbonus.py deleted file mode 100644 index 9bed34c1d..000000000 --- a/eos/effects/bclargeenergyturretpowerneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# bcLargeEnergyTurretPowerNeedBonus -# -# Used by: -# Ship: Oracle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "power", ship.getModifiedItemAttr("bcLargeTurretPower")) diff --git a/eos/effects/bclargehybridturretcapacitorneedbonus.py b/eos/effects/bclargehybridturretcapacitorneedbonus.py deleted file mode 100644 index 04ea48c8f..000000000 --- a/eos/effects/bclargehybridturretcapacitorneedbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# bcLargeHybridTurretCapacitorNeedBonus -# -# Used by: -# Ship: Naga -# Ship: Talos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "capacitorNeed", ship.getModifiedItemAttr("bcLargeTurretCap")) diff --git a/eos/effects/bclargehybridturretcpuneedbonus.py b/eos/effects/bclargehybridturretcpuneedbonus.py deleted file mode 100644 index 299c31845..000000000 --- a/eos/effects/bclargehybridturretcpuneedbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# bcLargeHybridTurretCPUNeedBonus -# -# Used by: -# Ship: Naga -# Ship: Talos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "cpu", ship.getModifiedItemAttr("bcLargeTurretCPU")) diff --git a/eos/effects/bclargehybridturretpowerneedbonus.py b/eos/effects/bclargehybridturretpowerneedbonus.py deleted file mode 100644 index c35072878..000000000 --- a/eos/effects/bclargehybridturretpowerneedbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# bcLargeHybridTurretPowerNeedBonus -# -# Used by: -# Ship: Naga -# Ship: Talos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "power", ship.getModifiedItemAttr("bcLargeTurretPower")) diff --git a/eos/effects/bclargeprojectileturretcpuneedbonus.py b/eos/effects/bclargeprojectileturretcpuneedbonus.py deleted file mode 100644 index fc0dfc50a..000000000 --- a/eos/effects/bclargeprojectileturretcpuneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# bcLargeProjectileTurretCPUNeedBonus -# -# Used by: -# Ship: Tornado -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "cpu", ship.getModifiedItemAttr("bcLargeTurretCPU")) diff --git a/eos/effects/bclargeprojectileturretpowerneedbonus.py b/eos/effects/bclargeprojectileturretpowerneedbonus.py deleted file mode 100644 index c37e55b8f..000000000 --- a/eos/effects/bclargeprojectileturretpowerneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# bcLargeProjectileTurretPowerNeedBonus -# -# Used by: -# Ship: Tornado -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "power", ship.getModifiedItemAttr("bcLargeTurretPower")) diff --git a/eos/effects/biologytimebonusfixed.py b/eos/effects/biologytimebonusfixed.py deleted file mode 100644 index b0e63322a..000000000 --- a/eos/effects/biologytimebonusfixed.py +++ /dev/null @@ -1,12 +0,0 @@ -# biologyTimeBonusFixed -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Biology BY (2 of 2) -# Skill: Biology -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.boosters.filteredItemBoost(lambda bst: True, "boosterDuration", - container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/blockaderunnercloakcpupercentbonus.py b/eos/effects/blockaderunnercloakcpupercentbonus.py deleted file mode 100644 index b153efbc3..000000000 --- a/eos/effects/blockaderunnercloakcpupercentbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# blockadeRunnerCloakCpuPercentBonus -# -# Used by: -# Ships from group: Blockade Runner (4 of 4) -type = "passive" -runTime = "early" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cloaking Device", - "cpu", ship.getModifiedItemAttr("eliteIndustrialCovertCloakBonus"), - skill="Transport Ships") diff --git a/eos/effects/boosterarmorhppenalty.py b/eos/effects/boosterarmorhppenalty.py deleted file mode 100644 index 0620ca719..000000000 --- a/eos/effects/boosterarmorhppenalty.py +++ /dev/null @@ -1,15 +0,0 @@ -# boosterArmorHpPenalty -# -# Used by: -# Implants named like: Booster (12 of 35) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Armor Capacity" - -# Attribute that this effect targets -attr = "boosterArmorHPPenalty" - - -def handler(fit, booster, context): - fit.ship.boostItemAttr("armorHP", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boosterarmorrepairamountpenalty.py b/eos/effects/boosterarmorrepairamountpenalty.py deleted file mode 100644 index 32596c796..000000000 --- a/eos/effects/boosterarmorrepairamountpenalty.py +++ /dev/null @@ -1,18 +0,0 @@ -# boosterArmorRepairAmountPenalty -# -# Used by: -# Implants named like: Drop Booster (3 of 4) -# Implants named like: Mindflood Booster (3 of 4) -# Implants named like: Sooth Sayer Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Armor Repair Amount" - -# Attribute that this effect targets -attr = "boosterArmorRepairAmountPenalty" - - -def handler(fit, booster, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Repair Unit", - "armorDamageAmount", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boostercapacitorcapacitypenalty.py b/eos/effects/boostercapacitorcapacitypenalty.py deleted file mode 100644 index 1f546f439..000000000 --- a/eos/effects/boostercapacitorcapacitypenalty.py +++ /dev/null @@ -1,16 +0,0 @@ -# boosterCapacitorCapacityPenalty -# -# Used by: -# Implants named like: Blue Pill Booster (3 of 5) -# Implants named like: Exile Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Cap Capacity" - -# Attribute that this effect targets -attr = "boosterCapacitorCapacityPenalty" - - -def handler(fit, booster, context): - fit.ship.boostItemAttr("capacitorCapacity", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boostermaxvelocitypenalty.py b/eos/effects/boostermaxvelocitypenalty.py deleted file mode 100644 index 83856e018..000000000 --- a/eos/effects/boostermaxvelocitypenalty.py +++ /dev/null @@ -1,16 +0,0 @@ -# boosterMaxVelocityPenalty -# -# Used by: -# Implants named like: Crash Booster (3 of 4) -# Items from market group: Implants & Boosters > Booster > Booster Slot 02 (9 of 13) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Velocity" - -# Attribute that this effect targets -attr = "boosterMaxVelocityPenalty" - - -def handler(fit, booster, context): - fit.ship.boostItemAttr("maxVelocity", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boostermissileexplosioncloudpenaltyfixed.py b/eos/effects/boostermissileexplosioncloudpenaltyfixed.py deleted file mode 100644 index 24da2f481..000000000 --- a/eos/effects/boostermissileexplosioncloudpenaltyfixed.py +++ /dev/null @@ -1,17 +0,0 @@ -# boosterMissileExplosionCloudPenaltyFixed -# -# Used by: -# Implants named like: Exile Booster (3 of 4) -# Implants named like: Mindflood Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Missile Explosion Radius" - -# Attribute that this effect targets -attr = "boosterMissileAOECloudPenalty" - - -def handler(fit, booster, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeCloudSize", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boostermissileexplosionvelocitypenalty.py b/eos/effects/boostermissileexplosionvelocitypenalty.py deleted file mode 100644 index 873dd2968..000000000 --- a/eos/effects/boostermissileexplosionvelocitypenalty.py +++ /dev/null @@ -1,16 +0,0 @@ -# boosterMissileExplosionVelocityPenalty -# -# Used by: -# Implants named like: Blue Pill Booster (3 of 5) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Missile Explosion Velocity" - -# Attribute that this effect targets -attr = "boosterAOEVelocityPenalty" - - -def handler(fit, booster, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeVelocity", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boostermissilevelocitypenalty.py b/eos/effects/boostermissilevelocitypenalty.py deleted file mode 100644 index c18a39346..000000000 --- a/eos/effects/boostermissilevelocitypenalty.py +++ /dev/null @@ -1,17 +0,0 @@ -# boosterMissileVelocityPenalty -# -# Used by: -# Implants named like: Crash Booster (3 of 4) -# Implants named like: X Instinct Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Missile Velocity" - -# Attribute that this effect targets -attr = "boosterMissileVelocityPenalty" - - -def handler(fit, booster, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boostermodifyboosterarmorpenalties.py b/eos/effects/boostermodifyboosterarmorpenalties.py deleted file mode 100644 index 0714422d4..000000000 --- a/eos/effects/boostermodifyboosterarmorpenalties.py +++ /dev/null @@ -1,16 +0,0 @@ -# boosterModifyBoosterArmorPenalties -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) -# Implants named like: grade Edge (10 of 12) -# Skill: Neurotoxin Control -runTime = 'early' -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - attrs = ("boosterArmorHPPenalty", "boosterArmorRepairAmountPenalty") - for attr in attrs: - fit.boosters.filteredItemBoost(lambda booster: True, attr, - container.getModifiedItemAttr("boosterAttributeModifier") * level) diff --git a/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py b/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py deleted file mode 100644 index 348cd192b..000000000 --- a/eos/effects/boostermodifyboostermaxvelocityandcapacitorpenalty.py +++ /dev/null @@ -1,15 +0,0 @@ -# boosterModifyBoosterMaxVelocityAndCapacitorPenalty -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) -# Implants named like: grade Edge (10 of 12) -# Skill: Neurotoxin Control -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - attrs = ("boosterCapacitorCapacityPenalty", "boosterMaxVelocityPenalty") - for attr in attrs: - fit.boosters.filteredItemBoost(lambda booster: True, attr, - container.getModifiedItemAttr("boosterAttributeModifier") * level) diff --git a/eos/effects/boostermodifyboostermissilepenalty.py b/eos/effects/boostermodifyboostermissilepenalty.py deleted file mode 100644 index 0c247422d..000000000 --- a/eos/effects/boostermodifyboostermissilepenalty.py +++ /dev/null @@ -1,15 +0,0 @@ -# boosterModifyBoosterMissilePenalty -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) -# Implants named like: grade Edge (10 of 12) -# Skill: Neurotoxin Control -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - attrs = ("boosterAOEVelocityPenalty", "boosterMissileAOECloudPenalty", "boosterMissileVelocityPenalty") - for attr in attrs: - fit.boosters.filteredItemBoost(lambda booster: True, attr, - container.getModifiedItemAttr("boosterAttributeModifier") * level) diff --git a/eos/effects/boostermodifyboostershieldpenalty.py b/eos/effects/boostermodifyboostershieldpenalty.py deleted file mode 100644 index 9e05f2cb0..000000000 --- a/eos/effects/boostermodifyboostershieldpenalty.py +++ /dev/null @@ -1,17 +0,0 @@ -# boosterModifyBoosterShieldPenalty -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) -# Implants named like: grade Edge (10 of 12) -# Skill: Neurotoxin Control -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - attrs = ("boosterShieldBoostAmountPenalty", "boosterShieldCapacityPenalty", "shieldBoostMultiplier") - for attr in attrs: - # shieldBoostMultiplier can be positive (Blue Pill) and negative value (other boosters) - # We're interested in decreasing only side-effects - fit.boosters.filteredItemBoost(lambda booster: booster.getModifiedItemAttr(attr) < 0, - attr, container.getModifiedItemAttr("boosterAttributeModifier") * level) diff --git a/eos/effects/boostermodifyboosterturretpenalty.py b/eos/effects/boostermodifyboosterturretpenalty.py deleted file mode 100644 index e016e57e8..000000000 --- a/eos/effects/boostermodifyboosterturretpenalty.py +++ /dev/null @@ -1,15 +0,0 @@ -# boosterModifyBoosterTurretPenalty -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Control NC (2 of 2) -# Implants named like: grade Edge (10 of 12) -# Skill: Neurotoxin Control -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - attrs = ("boosterTurretFalloffPenalty", "boosterTurretOptimalRangePenalty", "boosterTurretTrackingPenalty") - for attr in attrs: - fit.boosters.filteredItemBoost(lambda booster: True, attr, - container.getModifiedItemAttr("boosterAttributeModifier") * level) diff --git a/eos/effects/boostershieldboostamountpenaltyshieldskills.py b/eos/effects/boostershieldboostamountpenaltyshieldskills.py deleted file mode 100644 index 4c9726ea9..000000000 --- a/eos/effects/boostershieldboostamountpenaltyshieldskills.py +++ /dev/null @@ -1,20 +0,0 @@ -# boosterShieldBoostAmountPenaltyShieldSkills -# -# Used by: -# Implants named like: Crash Booster (3 of 4) -# Implants named like: Frentix Booster (3 of 4) -# Implants named like: Mindflood Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Shield Boost" - -# Attribute that this effect targets -attr = "boosterShieldBoostAmountPenalty" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", - src.getModifiedItemAttr("boosterShieldBoostAmountPenalty")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "shieldBonus", - src.getModifiedItemAttr("boosterShieldBoostAmountPenalty")) diff --git a/eos/effects/boostershieldcapacitypenalty.py b/eos/effects/boostershieldcapacitypenalty.py deleted file mode 100644 index f93f04af9..000000000 --- a/eos/effects/boostershieldcapacitypenalty.py +++ /dev/null @@ -1,15 +0,0 @@ -# boosterShieldCapacityPenalty -# -# Used by: -# Implants from group: Booster (12 of 70) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Shield Capacity" - -# Attribute that this effect targets -attr = "boosterShieldCapacityPenalty" - - -def handler(fit, booster, context): - fit.ship.boostItemAttr("shieldCapacity", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boosterturretfalloffpenalty.py b/eos/effects/boosterturretfalloffpenalty.py deleted file mode 100644 index 636c49909..000000000 --- a/eos/effects/boosterturretfalloffpenalty.py +++ /dev/null @@ -1,17 +0,0 @@ -# boosterTurretFalloffPenalty -# -# Used by: -# Implants named like: Drop Booster (3 of 4) -# Implants named like: X Instinct Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Turret Falloff" - -# Attribute that this effect targets -attr = "boosterTurretFalloffPenalty" - - -def handler(fit, booster, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boosterturretoptimalrangepenalty.py b/eos/effects/boosterturretoptimalrangepenalty.py deleted file mode 100644 index e62bef3f5..000000000 --- a/eos/effects/boosterturretoptimalrangepenalty.py +++ /dev/null @@ -1,18 +0,0 @@ -# boosterTurretOptimalRangePenalty -# -# Used by: -# Implants named like: Blue Pill Booster (3 of 5) -# Implants named like: Mindflood Booster (3 of 4) -# Implants named like: Sooth Sayer Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Turret Optimal Range" - -# Attribute that this effect targets -attr = "boosterTurretOptimalRangePenalty" - - -def handler(fit, booster, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/boosterturrettrackingpenalty.py b/eos/effects/boosterturrettrackingpenalty.py deleted file mode 100644 index 77e71d373..000000000 --- a/eos/effects/boosterturrettrackingpenalty.py +++ /dev/null @@ -1,17 +0,0 @@ -# boosterTurretTrackingPenalty -# -# Used by: -# Implants named like: Exile Booster (3 of 4) -# Implants named like: Frentix Booster (3 of 4) -type = "boosterSideEffect" - -# User-friendly name for the side effect -displayName = "Turret Tracking" - -# Attribute that this effect targets -attr = "boosterTurretTrackingPenalty" - - -def handler(fit, booster, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", booster.getModifiedItemAttr(attr)) diff --git a/eos/effects/caldarisetbonus3.py b/eos/effects/caldarisetbonus3.py deleted file mode 100644 index ee4d55f4b..000000000 --- a/eos/effects/caldarisetbonus3.py +++ /dev/null @@ -1,12 +0,0 @@ -# caldarisetbonus3 -# -# Used by: -# Implants named like: High grade Talon (6 of 6) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanGravimetricStrengthPercent", - implant.getModifiedItemAttr("implantSetCaldariNavy")) diff --git a/eos/effects/caldarisetlgbonus.py b/eos/effects/caldarisetlgbonus.py deleted file mode 100644 index ed684aa94..000000000 --- a/eos/effects/caldarisetlgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# caldarisetLGbonus -# -# Used by: -# Implants named like: Low grade Talon (6 of 6) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanGravimetricStrengthModifier", - implant.getModifiedItemAttr("implantSetLGCaldariNavy")) diff --git a/eos/effects/caldarishipecmburstoptimalrangecb3.py b/eos/effects/caldarishipecmburstoptimalrangecb3.py deleted file mode 100644 index cc2d38e7a..000000000 --- a/eos/effects/caldarishipecmburstoptimalrangecb3.py +++ /dev/null @@ -1,10 +0,0 @@ -# caldariShipECMBurstOptimalRangeCB3 -# -# Used by: -# Ship: Scorpion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", - "ecmBurstRange", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/caldarishipewcapacitorneedcc.py b/eos/effects/caldarishipewcapacitorneedcc.py deleted file mode 100644 index 05a33ec43..000000000 --- a/eos/effects/caldarishipewcapacitorneedcc.py +++ /dev/null @@ -1,12 +0,0 @@ -# caldariShipEwCapacitorNeedCC -# -# Used by: -# Ship: Chameleon -# Ship: Falcon -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "capacitorNeed", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/caldarishipewcapacitorneedcf2.py b/eos/effects/caldarishipewcapacitorneedcf2.py deleted file mode 100644 index 3a63615dd..000000000 --- a/eos/effects/caldarishipewcapacitorneedcf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# caldariShipEwCapacitorNeedCF2 -# -# Used by: -# Ship: Griffin -# Ship: Kitsune -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "capacitorNeed", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/caldarishipewfalloffrangecb3.py b/eos/effects/caldarishipewfalloffrangecb3.py deleted file mode 100644 index 6e17fdbe1..000000000 --- a/eos/effects/caldarishipewfalloffrangecb3.py +++ /dev/null @@ -1,11 +0,0 @@ -# caldariShipEwFalloffRangeCB3 -# -# Used by: -# Ship: Scorpion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusCB3"), - skill="Caldari Battleship") diff --git a/eos/effects/caldarishipewfalloffrangecc2.py b/eos/effects/caldarishipewfalloffrangecc2.py deleted file mode 100644 index d046a9c67..000000000 --- a/eos/effects/caldarishipewfalloffrangecc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# caldariShipEwFalloffRangeCC2 -# -# Used by: -# Ship: Blackbird -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusCC2"), - skill="Caldari Cruiser") diff --git a/eos/effects/caldarishipewoptimalrangecb3.py b/eos/effects/caldarishipewoptimalrangecb3.py deleted file mode 100644 index f595eed45..000000000 --- a/eos/effects/caldarishipewoptimalrangecb3.py +++ /dev/null @@ -1,10 +0,0 @@ -# caldariShipEwOptimalRangeCB3 -# -# Used by: -# Ship: Scorpion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/caldarishipewoptimalrangecc2.py b/eos/effects/caldarishipewoptimalrangecc2.py deleted file mode 100644 index 0c0362a85..000000000 --- a/eos/effects/caldarishipewoptimalrangecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# caldariShipEwOptimalRangeCC2 -# -# Used by: -# Ship: Blackbird -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/caldarishipewstrengthcb.py b/eos/effects/caldarishipewstrengthcb.py deleted file mode 100644 index 48bdccb60..000000000 --- a/eos/effects/caldarishipewstrengthcb.py +++ /dev/null @@ -1,13 +0,0 @@ -# caldariShipEwStrengthCB -# -# Used by: -# Ship: Scorpion -type = "passive" - - -def handler(fit, ship, context): - for sensorType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronic Warfare"), - "scan{0}StrengthBonus".format(sensorType), - ship.getModifiedItemAttr("shipBonusCB"), stackingPenalties=True, - skill="Caldari Battleship") diff --git a/eos/effects/capacitorcapacityaddpassive.py b/eos/effects/capacitorcapacityaddpassive.py deleted file mode 100644 index 47cc811f5..000000000 --- a/eos/effects/capacitorcapacityaddpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# capacitorCapacityAddPassive -# -# Used by: -# Items from category: Subsystem (20 of 48) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("capacitorCapacity", module.getModifiedItemAttr("capacitorCapacity") or 0) diff --git a/eos/effects/capacitorcapacitybonus.py b/eos/effects/capacitorcapacitybonus.py deleted file mode 100644 index c998bcaa0..000000000 --- a/eos/effects/capacitorcapacitybonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# capacitorCapacityBonus -# -# Used by: -# Modules from group: Capacitor Battery (30 of 30) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.increaseItemAttr("capacitorCapacity", ship.getModifiedItemAttr("capacitorBonus")) diff --git a/eos/effects/capacitorcapacitymultiply.py b/eos/effects/capacitorcapacitymultiply.py deleted file mode 100644 index 91f3e6ed4..000000000 --- a/eos/effects/capacitorcapacitymultiply.py +++ /dev/null @@ -1,15 +0,0 @@ -# capacitorCapacityMultiply -# -# Used by: -# Modules from group: Capacitor Flux Coil (6 of 6) -# Modules from group: Capacitor Power Relay (20 of 20) -# Modules from group: Power Diagnostic System (23 of 23) -# Modules from group: Propulsion Module (68 of 133) -# Modules from group: Reactor Control Unit (22 of 22) -type = "passive" - - -def handler(fit, module, context): - # We default this to None as there are times when the source attribute doesn't exist (for example, Cap Power Relay). - # It will return 0 as it doesn't exist, which would nullify whatever the target attribute is - fit.ship.multiplyItemAttr("capacitorCapacity", module.getModifiedItemAttr("capacitorCapacityMultiplier", None)) diff --git a/eos/effects/capacitoremissionsystemskill.py b/eos/effects/capacitoremissionsystemskill.py deleted file mode 100644 index c792ef48c..000000000 --- a/eos/effects/capacitoremissionsystemskill.py +++ /dev/null @@ -1,13 +0,0 @@ -# capacitorEmissionSystemskill -# -# Used by: -# Implants named like: Inherent Implants 'Squire' Capacitor Emission Systems ES (6 of 6) -# Modules named like: Egress Port Maximizer (8 of 8) -# Skill: Capacitor Emission Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/capacityaddpassive.py b/eos/effects/capacityaddpassive.py deleted file mode 100644 index 8d7ee24bd..000000000 --- a/eos/effects/capacityaddpassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# capacityAddPassive -# -# Used by: -# Subsystems named like: Defensive Covert Reconfiguration (4 of 4) -# Subsystem: Legion Defensive - Nanobot Injector -type = "passive" - - -def handler(fit, subsystem, context): - fit.ship.increaseItemAttr("capacity", subsystem.getModifiedItemAttr("cargoCapacityAdd") or 0) diff --git a/eos/effects/capitallauncherskillcitadelemdamage.py b/eos/effects/capitallauncherskillcitadelemdamage.py deleted file mode 100644 index 253fbd818..000000000 --- a/eos/effects/capitallauncherskillcitadelemdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# capitalLauncherSkillCitadelEmDamage -# -# Used by: -# Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) -# Skill: XL Torpedoes -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), - "emDamage", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/capitallauncherskillcitadelexplosivedamage.py b/eos/effects/capitallauncherskillcitadelexplosivedamage.py deleted file mode 100644 index 1ce75bd0b..000000000 --- a/eos/effects/capitallauncherskillcitadelexplosivedamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# capitalLauncherSkillCitadelExplosiveDamage -# -# Used by: -# Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) -# Skill: XL Torpedoes -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/capitallauncherskillcitadelkineticdamage.py b/eos/effects/capitallauncherskillcitadelkineticdamage.py deleted file mode 100644 index 9e59f3aea..000000000 --- a/eos/effects/capitallauncherskillcitadelkineticdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# capitalLauncherSkillCitadelKineticDamage -# -# Used by: -# Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) -# Skill: XL Torpedoes -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/capitallauncherskillcitadelthermaldamage.py b/eos/effects/capitallauncherskillcitadelthermaldamage.py deleted file mode 100644 index 044c7a844..000000000 --- a/eos/effects/capitallauncherskillcitadelthermaldamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# capitalLauncherSkillCitadelThermalDamage -# -# Used by: -# Implants named like: Hardwiring Zainou 'Sharpshooter' ZMX (6 of 6) -# Skill: XL Torpedoes -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/capitallauncherskillcruisecitadelemdamage1.py b/eos/effects/capitallauncherskillcruisecitadelemdamage1.py deleted file mode 100644 index 2c847d0c1..000000000 --- a/eos/effects/capitallauncherskillcruisecitadelemdamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalLauncherSkillCruiseCitadelEmDamage1 -# -# Used by: -# Skill: XL Cruise Missiles -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), - "emDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py b/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py deleted file mode 100644 index 2b52bfcb3..000000000 --- a/eos/effects/capitallauncherskillcruisecitadelexplosivedamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalLauncherSkillCruiseCitadelExplosiveDamage1 -# -# Used by: -# Skill: XL Cruise Missiles -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), - "explosiveDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py b/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py deleted file mode 100644 index e51cad250..000000000 --- a/eos/effects/capitallauncherskillcruisecitadelkineticdamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalLauncherSkillCruiseCitadelKineticDamage1 -# -# Used by: -# Skill: XL Cruise Missiles -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), - "kineticDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py b/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py deleted file mode 100644 index 097a6d2b2..000000000 --- a/eos/effects/capitallauncherskillcruisecitadelthermaldamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalLauncherSkillCruiseCitadelThermalDamage1 -# -# Used by: -# Skill: XL Cruise Missiles -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), - "thermalDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitalremotearmorrepairercapneedbonusskill.py b/eos/effects/capitalremotearmorrepairercapneedbonusskill.py deleted file mode 100644 index 502143ed2..000000000 --- a/eos/effects/capitalremotearmorrepairercapneedbonusskill.py +++ /dev/null @@ -1,12 +0,0 @@ -# capitalRemoteArmorRepairerCapNeedBonusSkill -# -# Used by: -# Variations of module: Capital Remote Repair Augmentor I (2 of 2) -# Skill: Capital Remote Armor Repair Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/capitalremoteenergytransfercapneedbonusskill.py b/eos/effects/capitalremoteenergytransfercapneedbonusskill.py deleted file mode 100644 index a33d1250d..000000000 --- a/eos/effects/capitalremoteenergytransfercapneedbonusskill.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalRemoteEnergyTransferCapNeedBonusSkill -# -# Used by: -# Skill: Capital Capacitor Emission Systems -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Capacitor Emission Systems"), - "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py b/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py deleted file mode 100644 index 7ae9b3710..000000000 --- a/eos/effects/capitalremoteshieldtransfercapneedbonusskill.py +++ /dev/null @@ -1,11 +0,0 @@ -# capitalRemoteShieldTransferCapNeedBonusSkill -# -# Used by: -# Skill: Capital Shield Emission Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/capitalrepairsystemsskilldurationbonus.py b/eos/effects/capitalrepairsystemsskilldurationbonus.py deleted file mode 100644 index 9ccf42487..000000000 --- a/eos/effects/capitalrepairsystemsskilldurationbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# capitalRepairSystemsSkillDurationBonus -# -# Used by: -# Modules named like: Nanobot Accelerator (8 of 8) -# Skill: Capital Repair Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), - "duration", container.getModifiedItemAttr("durationSkillBonus") * level, - stackingPenalties="skill" not in context) diff --git a/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py b/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py deleted file mode 100644 index 82b5f1cde..000000000 --- a/eos/effects/capitalshieldoperationskillcapacitorneedbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# capitalShieldOperationSkillCapacitorNeedBonus -# -# Used by: -# Modules named like: Core Defense Capacitor Safeguard (8 of 8) -# Skill: Capital Shield Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), - "capacitorNeed", container.getModifiedItemAttr("shieldBoostCapacitorBonus") * level) diff --git a/eos/effects/capitalturretskillhybriddamage.py b/eos/effects/capitalturretskillhybriddamage.py deleted file mode 100644 index dac86333a..000000000 --- a/eos/effects/capitalturretskillhybriddamage.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalTurretSkillHybridDamage -# -# Used by: -# Skill: Capital Hybrid Turret -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitalturretskilllaserdamage.py b/eos/effects/capitalturretskilllaserdamage.py deleted file mode 100644 index e1668e7c8..000000000 --- a/eos/effects/capitalturretskilllaserdamage.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalTurretSkillLaserDamage -# -# Used by: -# Skill: Capital Energy Turret -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capitalturretskillprojectiledamage.py b/eos/effects/capitalturretskillprojectiledamage.py deleted file mode 100644 index ac4b49115..000000000 --- a/eos/effects/capitalturretskillprojectiledamage.py +++ /dev/null @@ -1,10 +0,0 @@ -# capitalTurretSkillProjectileDamage -# -# Used by: -# Skill: Capital Projectile Turret -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/capneedbonuseffecthybrids.py b/eos/effects/capneedbonuseffecthybrids.py deleted file mode 100644 index 8f1cad753..000000000 --- a/eos/effects/capneedbonuseffecthybrids.py +++ /dev/null @@ -1,10 +0,0 @@ -# capNeedBonusEffectHybrids -# -# Used by: -# Modules named like: Hybrid Discharge Elutriation (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "capacitorNeed", module.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/capneedbonuseffectlasers.py b/eos/effects/capneedbonuseffectlasers.py deleted file mode 100644 index e37290e63..000000000 --- a/eos/effects/capneedbonuseffectlasers.py +++ /dev/null @@ -1,10 +0,0 @@ -# capNeedBonusEffectLasers -# -# Used by: -# Modules named like: Energy Discharge Elutriation (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "capacitorNeed", module.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/cargoandoreholdcapacitybonusics1.py b/eos/effects/cargoandoreholdcapacitybonusics1.py deleted file mode 100644 index 780548d08..000000000 --- a/eos/effects/cargoandoreholdcapacitybonusics1.py +++ /dev/null @@ -1,15 +0,0 @@ -# cargoAndOreHoldCapacityBonusICS1 -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("specialOreHoldCapacity", - src.getModifiedItemAttr("shipBonusICS1"), - skill="Industrial Command Ships") - - fit.ship.boostItemAttr("capacity", - src.getModifiedItemAttr("shipBonusICS1"), - skill="Industrial Command Ships") diff --git a/eos/effects/cargocapacitymultiply.py b/eos/effects/cargocapacitymultiply.py deleted file mode 100644 index 860f4c413..000000000 --- a/eos/effects/cargocapacitymultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# cargoCapacityMultiply -# -# Used by: -# Modules from group: Expanded Cargohold (7 of 7) -# Modules from group: Overdrive Injector System (7 of 7) -# Modules from group: Reinforced Bulkhead (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("capacity", module.getModifiedItemAttr("cargoCapacityMultiplier")) diff --git a/eos/effects/chargebonuswarfarecharge.py b/eos/effects/chargebonuswarfarecharge.py deleted file mode 100644 index b0998fbb4..000000000 --- a/eos/effects/chargebonuswarfarecharge.py +++ /dev/null @@ -1,11 +0,0 @@ -# chargeBonusWarfareCharge -# -# Used by: -# Items from market group: Ammunition & Charges > Command Burst Charges (15 of 15) -type = "active" - - -def handler(fit, module, context): - for x in range(1, 4): - value = module.getModifiedChargeAttr("warfareBuff{}Multiplier".format(x)) - module.multiplyItemAttr("warfareBuff{}Value".format(x), value) diff --git a/eos/effects/citadelrigbonus.py b/eos/effects/citadelrigbonus.py deleted file mode 100644 index 195835283..000000000 --- a/eos/effects/citadelrigbonus.py +++ /dev/null @@ -1,24 +0,0 @@ -# citadelRigBonus -# -# Used by: -# Structures from group: Citadel (9 of 9) -type = "passive" -runTime = "early" - - -def handler(fit, src, context): - - for attr in [ - "structureRigDoomsdayDamageLossTargetBonus", - "structureRigScanResBonus", - "structureRigPDRangeBonus", - "structureRigPDCapUseBonus", - "structureRigMissileExploVeloBonus", - "structureRigMissileVelocityBonus", - "structureRigEwarOptimalBonus", - "structureRigEwarFalloffBonus", - "structureRigEwarCapUseBonus", - "structureRigMissileExplosionRadiusBonus" - ]: - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Jury Rigging"), - attr, src.getModifiedItemAttr("structureRoleBonus")) diff --git a/eos/effects/cloaking.py b/eos/effects/cloaking.py deleted file mode 100644 index cb53716b2..000000000 --- a/eos/effects/cloaking.py +++ /dev/null @@ -1,16 +0,0 @@ -# cloaking -# -# Used by: -# Modules from group: Cloaking Device (10 of 14) -type = "active" -runTime = "early" - - -# TODO: Rewrite this effect -def handler(fit, module, context): - # Set flag which is used to determine if ship is cloaked or not - # This is used to apply cloak-only bonuses, like Black Ops' speed bonus - # Doesn't apply to covops cloaks - fit.extraAttributes["cloaked"] = True - # Apply speed penalty - fit.ship.multiplyItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocityModifier")) diff --git a/eos/effects/cloakingprototype.py b/eos/effects/cloakingprototype.py deleted file mode 100644 index 48c480b67..000000000 --- a/eos/effects/cloakingprototype.py +++ /dev/null @@ -1,16 +0,0 @@ -# cloakingPrototype -# -# Used by: -# Modules named like: Prototype Cloaking Device I (2 of 2) -type = "active" -runTime = "early" - - -# TODO: Rewrite this effect -def handler(fit, module, context): - # Set flag which is used to determine if ship is cloaked or not - # This is used to apply cloak-only bonuses, like Black Ops' speed bonus - # Doesn't apply to covops cloaks - fit.extraAttributes["cloaked"] = True - # Apply speed penalty - fit.ship.multiplyItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocityModifier")) diff --git a/eos/effects/cloakingscanresolutionmultiplier.py b/eos/effects/cloakingscanresolutionmultiplier.py deleted file mode 100644 index 38f073c5b..000000000 --- a/eos/effects/cloakingscanresolutionmultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# cloakingScanResolutionMultiplier -# -# Used by: -# Modules from group: Cloaking Device (12 of 14) -type = "offline" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("scanResolution", - module.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties=True, penaltyGroup="cloakingScanResolutionMultiplier") diff --git a/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py b/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py deleted file mode 100644 index 40d80376e..000000000 --- a/eos/effects/cloakingtargetingdelaybonuslrsmcloakingpassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# cloakingTargetingDelayBonusLRSMCloakingPassive -# -# Used by: -# Modules named like: Targeting Systems Stabilizer (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda module: module.item.requiresSkill("Cloaking"), - "cloakingTargetingDelay", module.getModifiedItemAttr("cloakingTargetingDelayBonus")) diff --git a/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py b/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py deleted file mode 100644 index 292926bdd..000000000 --- a/eos/effects/cloakingtargetingdelaybonuspostpercentcloakingtargetingdelaybonusforshipmodulesrequiringcloaking.py +++ /dev/null @@ -1,11 +0,0 @@ -# cloakingTargetingDelayBonusPostPercentCloakingTargetingDelayBonusForShipModulesRequiringCloaking -# -# Used by: -# Skill: Cloaking -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), - "cloakingTargetingDelay", - skill.getModifiedItemAttr("cloakingTargetingDelayBonus") * skill.level) diff --git a/eos/effects/cloakingwarpsafe.py b/eos/effects/cloakingwarpsafe.py deleted file mode 100644 index 6906118dc..000000000 --- a/eos/effects/cloakingwarpsafe.py +++ /dev/null @@ -1,11 +0,0 @@ -# cloakingWarpSafe -# -# Used by: -# Modules named like: Covert Ops Cloaking Device II (2 of 2) -type = "active" -runTime = "early" - - -def handler(fit, ship, context): - fit.extraAttributes["cloaked"] = True - # TODO: Implement diff --git a/eos/effects/clonevatmaxjumpclonebonusskillnew.py b/eos/effects/clonevatmaxjumpclonebonusskillnew.py deleted file mode 100644 index 0ab64f55e..000000000 --- a/eos/effects/clonevatmaxjumpclonebonusskillnew.py +++ /dev/null @@ -1,9 +0,0 @@ -# cloneVatMaxJumpCloneBonusSkillNew -# -# Used by: -# Skill: Cloning Facility Operation -type = "passive" - - -def handler(fit, skill, context): - fit.ship.boostItemAttr("maxJumpClones", skill.getModifiedItemAttr("maxJumpClonesBonus") * skill.level) diff --git a/eos/effects/commandburstaoebonus.py b/eos/effects/commandburstaoebonus.py deleted file mode 100644 index 5500e8578..000000000 --- a/eos/effects/commandburstaoebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# commandBurstAoEBonus -# -# Used by: -# Skill: Fleet Command -# Skill: Leadership -# Skill: Wing Command -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "maxRange", - src.getModifiedItemAttr("areaOfEffectBonus") * src.level) diff --git a/eos/effects/commandburstaoerolebonus.py b/eos/effects/commandburstaoerolebonus.py deleted file mode 100644 index f69aecd01..000000000 --- a/eos/effects/commandburstaoerolebonus.py +++ /dev/null @@ -1,18 +0,0 @@ -# commandBurstAoERoleBonus -# -# Used by: -# Ships from group: Carrier (4 of 4) -# Ships from group: Combat Battlecruiser (14 of 14) -# Ships from group: Command Ship (8 of 8) -# Ships from group: Force Auxiliary (6 of 6) -# Ships from group: Supercarrier (6 of 6) -# Ships from group: Titan (7 of 7) -# Subsystems named like: Offensive Support Processor (4 of 4) -# Ship: Orca -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "maxRange", - src.getModifiedItemAttr("roleBonusCommandBurstAoERange")) diff --git a/eos/effects/commandburstreloadtimebonus.py b/eos/effects/commandburstreloadtimebonus.py deleted file mode 100644 index c0207bef4..000000000 --- a/eos/effects/commandburstreloadtimebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# commandBurstReloadTimeBonus -# -# Used by: -# Skill: Command Burst Specialist -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), - "reloadTime", - src.getModifiedItemAttr("reloadTimeBonus") * lvl) diff --git a/eos/effects/commandprocessoreffect.py b/eos/effects/commandprocessoreffect.py deleted file mode 100644 index 887644ece..000000000 --- a/eos/effects/commandprocessoreffect.py +++ /dev/null @@ -1,12 +0,0 @@ -# commandProcessorEffect -# -# Used by: -# Modules named like: Command Processor I (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", - src.getModifiedItemAttr("maxGangModules")) - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupOnline", - src.getModifiedItemAttr("maxGangModules")) diff --git a/eos/effects/commandshipmultirelayeffect.py b/eos/effects/commandshipmultirelayeffect.py deleted file mode 100644 index 9a3b30089..000000000 --- a/eos/effects/commandshipmultirelayeffect.py +++ /dev/null @@ -1,14 +0,0 @@ -# commandshipMultiRelayEffect -# -# Used by: -# Ships from group: Command Ship (8 of 8) -# Ships from group: Industrial Command Ship (2 of 2) -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", - src.getModifiedItemAttr("maxGangModules")) - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupOnline", - src.getModifiedItemAttr("maxGangModules")) diff --git a/eos/effects/concordsecstatustankbonus.py b/eos/effects/concordsecstatustankbonus.py deleted file mode 100644 index 16d1b65c5..000000000 --- a/eos/effects/concordsecstatustankbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# concordSecStatusTankBonus -# -# Used by: -# Ship: Enforcer -# Ship: Marshal -# Ship: Pacifier -type = "passive" - - -def handler(fit, src, context): - - # Get pilot sec status bonus directly here, instead of going through the intermediary effects - # via https://forums.eveonline.com/default.aspx?g=posts&t=515826 - try: - bonus = max(0, min(50.0, (src.parent.character.secStatus * 10))) - except: - bonus = None - - if bonus is not None: - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", bonus, stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", bonus, stackingPenalties=True) diff --git a/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py b/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py deleted file mode 100644 index 7c1cd7011..000000000 --- a/eos/effects/controlledburstscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,12 +0,0 @@ -# controlledBurstsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringGunnery -# -# Used by: -# Implants named like: Inherent Implants 'Lancer' Controlled Bursts CB (6 of 6) -# Skill: Controlled Bursts -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/covertcloakcpuaddition.py b/eos/effects/covertcloakcpuaddition.py deleted file mode 100644 index c3aa76e17..000000000 --- a/eos/effects/covertcloakcpuaddition.py +++ /dev/null @@ -1,10 +0,0 @@ -# CovertCloakCPUAddition -# -# Used by: -# Modules named like: Covert Ops Cloaking Device II (2 of 2) -# Module: Covert Cynosural Field Generator I -type = "passive" - - -def handler(fit, module, context): - module.increaseItemAttr("cpu", module.getModifiedItemAttr("covertCloakCPUAdd") or 0) diff --git a/eos/effects/covertcynocpupenalty.py b/eos/effects/covertcynocpupenalty.py deleted file mode 100644 index aeaf0cc45..000000000 --- a/eos/effects/covertcynocpupenalty.py +++ /dev/null @@ -1,10 +0,0 @@ -# covertCynoCpuPenalty -# -# Used by: -# Subsystems from group: Defensive Systems (8 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Cynosural Field Theory"), - "covertCloakCPUAdd", module.getModifiedItemAttr("covertCloakCPUPenalty")) diff --git a/eos/effects/covertopsandreconopscloakmoduledelaybonus.py b/eos/effects/covertopsandreconopscloakmoduledelaybonus.py deleted file mode 100644 index 7ea8e593d..000000000 --- a/eos/effects/covertopsandreconopscloakmoduledelaybonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# covertOpsAndReconOpsCloakModuleDelayBonus -# -# Used by: -# Ships from group: Black Ops (5 of 5) -# Ships from group: Blockade Runner (4 of 4) -# Ships from group: Covert Ops (8 of 8) -# Ships from group: Expedition Frigate (2 of 2) -# Ships from group: Force Recon Ship (9 of 9) -# Ships from group: Stealth Bomber (5 of 5) -# Ships named like: Stratios (2 of 2) -# Subsystems named like: Defensive Covert Reconfiguration (4 of 4) -# Ship: Astero -# Ship: Rabisu -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemForce(lambda mod: mod.item.requiresSkill("Cloaking"), - "moduleReactivationDelay", - container.getModifiedItemAttr("covertOpsAndReconOpsCloakModuleDelay")) diff --git a/eos/effects/covertopscloakcpupenalty.py b/eos/effects/covertopscloakcpupenalty.py deleted file mode 100644 index 3cbb0e7fb..000000000 --- a/eos/effects/covertopscloakcpupenalty.py +++ /dev/null @@ -1,10 +0,0 @@ -# covertOpsCloakCpuPenalty -# -# Used by: -# Subsystems from group: Defensive Systems (8 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Cloaking"), - "covertCloakCPUAdd", module.getModifiedItemAttr("covertCloakCPUPenalty")) diff --git a/eos/effects/covertopscloakcpupercentbonus1.py b/eos/effects/covertopscloakcpupercentbonus1.py deleted file mode 100644 index e34450131..000000000 --- a/eos/effects/covertopscloakcpupercentbonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# covertOpsCloakCpuPercentBonus1 -# -# Used by: -# Ships from group: Covert Ops (6 of 8) -type = "passive" -runTime = "early" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), - "cpu", ship.getModifiedItemAttr("eliteBonusCovertOps1"), skill="Covert Ops") diff --git a/eos/effects/covertopscloakcpupercentrolebonus.py b/eos/effects/covertopscloakcpupercentrolebonus.py deleted file mode 100644 index 74269721d..000000000 --- a/eos/effects/covertopscloakcpupercentrolebonus.py +++ /dev/null @@ -1,17 +0,0 @@ -# covertOpsCloakCPUPercentRoleBonus -# -# Used by: -# Ships from group: Expedition Frigate (2 of 2) -# Ship: Astero -# Ship: Enforcer -# Ship: Pacifier -# Ship: Victor -# Ship: Victorieux Luxury Yacht -# Ship: Virtuoso -type = "passive" -runTime = "early" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), - "cpu", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/covertopscpubonus1.py b/eos/effects/covertopscpubonus1.py deleted file mode 100644 index 8c45bb186..000000000 --- a/eos/effects/covertopscpubonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# covertOpsCpuBonus1 -# -# Used by: -# Ships from group: Stealth Bomber (4 of 5) -# Subsystems named like: Defensive Covert Reconfiguration (4 of 4) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Cloaking Device", - "cpu", container.getModifiedItemAttr("cloakingCpuNeedBonus")) diff --git a/eos/effects/covertopsstealthbombersiegemissilelaunchercpuneedbonus.py b/eos/effects/covertopsstealthbombersiegemissilelaunchercpuneedbonus.py deleted file mode 100644 index 926aa81c0..000000000 --- a/eos/effects/covertopsstealthbombersiegemissilelaunchercpuneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# covertOpsStealthBomberSiegeMissileLauncherCPUNeedBonus -# -# Used by: -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", - "cpu", ship.getModifiedItemAttr("stealthBomberLauncherCPU")) diff --git a/eos/effects/covertopsstealthbombersiegemissilelauncherpowerneedbonus.py b/eos/effects/covertopsstealthbombersiegemissilelauncherpowerneedbonus.py deleted file mode 100644 index 6e26dc922..000000000 --- a/eos/effects/covertopsstealthbombersiegemissilelauncherpowerneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# covertOpsStealthBomberSiegeMissileLauncherPowerNeedBonus -# -# Used by: -# Ships from group: Stealth Bomber (5 of 5) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", - "power", ship.getModifiedItemAttr("stealthBomberLauncherPower")) diff --git a/eos/effects/covertopsstealthbombertargettingdelaybonus.py b/eos/effects/covertopsstealthbombertargettingdelaybonus.py deleted file mode 100644 index 14d838e74..000000000 --- a/eos/effects/covertopsstealthbombertargettingdelaybonus.py +++ /dev/null @@ -1,17 +0,0 @@ -# covertOpsStealthBomberTargettingDelayBonus -# -# Used by: -# Ships from group: Black Ops (5 of 5) -# Ships from group: Stealth Bomber (5 of 5) -# Ship: Caedes -# Ship: Chremoas -# Ship: Endurance -# Ship: Etana -# Ship: Rabisu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemForce(lambda mod: mod.item.group.name == "Cloaking Device", - "cloakingTargetingDelay", - ship.getModifiedItemAttr("covertOpsStealthBomberTargettingDelay")) diff --git a/eos/effects/covertopswarpresistance.py b/eos/effects/covertopswarpresistance.py deleted file mode 100644 index 1ab7538c1..000000000 --- a/eos/effects/covertopswarpresistance.py +++ /dev/null @@ -1,9 +0,0 @@ -# covertOpsWarpResistance -# -# Used by: -# Ships from group: Covert Ops (5 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpFactor", src.getModifiedItemAttr("eliteBonusCovertOps1"), skill="Covert Ops") diff --git a/eos/effects/cpumultiplierpostmulcpuoutputship.py b/eos/effects/cpumultiplierpostmulcpuoutputship.py deleted file mode 100644 index 99c14306b..000000000 --- a/eos/effects/cpumultiplierpostmulcpuoutputship.py +++ /dev/null @@ -1,10 +0,0 @@ -# cpuMultiplierPostMulCpuOutputShip -# -# Used by: -# Modules from group: CPU Enhancer (19 of 19) -# Variations of structure module: Standup Co-Processor Array I (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("cpuOutput", module.getModifiedItemAttr("cpuMultiplier")) diff --git a/eos/effects/cpuneedbonuseffecthybrid.py b/eos/effects/cpuneedbonuseffecthybrid.py deleted file mode 100644 index b3e7d6c75..000000000 --- a/eos/effects/cpuneedbonuseffecthybrid.py +++ /dev/null @@ -1,10 +0,0 @@ -# cpuNeedBonusEffectHybrid -# -# Used by: -# Modules named like: Algid Hybrid Administrations Unit (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "cpu", module.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/cpuneedbonuseffectlasers.py b/eos/effects/cpuneedbonuseffectlasers.py deleted file mode 100644 index 689898682..000000000 --- a/eos/effects/cpuneedbonuseffectlasers.py +++ /dev/null @@ -1,10 +0,0 @@ -# cpuNeedBonusEffectLasers -# -# Used by: -# Modules named like: Algid Energy Administrations Unit (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "cpu", module.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/cpuoutputaddcpuoutputpassive.py b/eos/effects/cpuoutputaddcpuoutputpassive.py deleted file mode 100644 index 16c38b5c8..000000000 --- a/eos/effects/cpuoutputaddcpuoutputpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# cpuOutputAddCpuOutputPassive -# -# Used by: -# Subsystems from group: Offensive Systems (8 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("cpuOutput", module.getModifiedItemAttr("cpuOutput")) diff --git a/eos/effects/crystalminingamountinfo2.py b/eos/effects/crystalminingamountinfo2.py deleted file mode 100644 index 68a126d49..000000000 --- a/eos/effects/crystalminingamountinfo2.py +++ /dev/null @@ -1,9 +0,0 @@ -# crystalMiningamountInfo2 -# -# Used by: -# Modules from group: Frequency Mining Laser (3 of 3) -type = "passive" -runTime = "late" - -def handler(fit, module, context): - module.preAssignItemAttr("specialtyMiningAmount", module.getModifiedItemAttr("miningAmount")) diff --git a/eos/effects/cynosuraldurationbonus.py b/eos/effects/cynosuraldurationbonus.py deleted file mode 100644 index defbd9ca3..000000000 --- a/eos/effects/cynosuraldurationbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# cynosuralDurationBonus -# -# Used by: -# Ships from group: Force Recon Ship (8 of 9) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cynosural Field Generator", - "duration", ship.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/cynosuralgeneration.py b/eos/effects/cynosuralgeneration.py deleted file mode 100644 index 36e29c52d..000000000 --- a/eos/effects/cynosuralgeneration.py +++ /dev/null @@ -1,9 +0,0 @@ -# cynosuralGeneration -# -# Used by: -# Modules from group: Cynosural Field Generator (2 of 2) -type = "active" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor")) diff --git a/eos/effects/cynosuraltheoryconsumptionbonus.py b/eos/effects/cynosuraltheoryconsumptionbonus.py deleted file mode 100644 index d6bda31b7..000000000 --- a/eos/effects/cynosuraltheoryconsumptionbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# cynosuralTheoryConsumptionBonus -# -# Used by: -# Ships from group: Force Recon Ship (8 of 9) -# Skill: Cynosural Field Theory -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cynosural Field Generator", - "consumptionQuantity", - container.getModifiedItemAttr("consumptionQuantityBonusPercentage") * level) diff --git a/eos/effects/damagecontrol.py b/eos/effects/damagecontrol.py deleted file mode 100644 index f563fac03..000000000 --- a/eos/effects/damagecontrol.py +++ /dev/null @@ -1,15 +0,0 @@ -# damageControl -# -# Used by: -# Modules from group: Damage Control (22 of 27) -type = "passive" - - -def handler(fit, module, context): - for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): - for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): - bonus = "%s%sDamageResonance" % (attrPrefix, damageType) - bonus = "%s%s" % (bonus[0].lower(), bonus[1:]) - booster = "%s%sDamageResonance" % (layer, damageType) - fit.ship.multiplyItemAttr(bonus, module.getModifiedItemAttr(booster), - stackingPenalties=True, penaltyGroup="preMul") diff --git a/eos/effects/dataminermoduledurationreduction.py b/eos/effects/dataminermoduledurationreduction.py deleted file mode 100644 index aaa6af58a..000000000 --- a/eos/effects/dataminermoduledurationreduction.py +++ /dev/null @@ -1,10 +0,0 @@ -# dataminerModuleDurationReduction -# -# Used by: -# Implant: Poteque 'Prospector' Environmental Analysis EY-1005 -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Data Miners", - "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py b/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py deleted file mode 100644 index 376039994..000000000 --- a/eos/effects/dataminingskillboostaccessdifficultybonusabsolutepercent.py +++ /dev/null @@ -1,12 +0,0 @@ -# dataMiningSkillBoostAccessDifficultyBonusAbsolutePercent -# -# Used by: -# Skill: Archaeology -# Skill: Hacking -# Skill: Salvaging -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill(skill), "accessDifficultyBonus", - skill.getModifiedItemAttr("accessDifficultyBonusAbsolutePercent") * skill.level) diff --git a/eos/effects/disintegratorweapondamagemultiply.py b/eos/effects/disintegratorweapondamagemultiply.py deleted file mode 100644 index b070c9ee2..000000000 --- a/eos/effects/disintegratorweapondamagemultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# disintegratorWeaponDamageMultiply -# -# Used by: -# Modules from group: Entropic Radiation Sink (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Precursor Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/disintegratorweaponspeedmultiply.py b/eos/effects/disintegratorweaponspeedmultiply.py deleted file mode 100644 index eccf38371..000000000 --- a/eos/effects/disintegratorweaponspeedmultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# disintegratorWeaponSpeedMultiply -# -# Used by: -# Modules from group: Entropic Radiation Sink (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Precursor Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/dohacking.py b/eos/effects/dohacking.py deleted file mode 100644 index ddd2a7205..000000000 --- a/eos/effects/dohacking.py +++ /dev/null @@ -1,9 +0,0 @@ -# doHacking -# -# Used by: -# Modules from group: Data Miners (10 of 10) -type = "active" - - -def handler(fit, module, context): - pass diff --git a/eos/effects/doomsdayaoebubble.py b/eos/effects/doomsdayaoebubble.py deleted file mode 100644 index 8d79e289d..000000000 --- a/eos/effects/doomsdayaoebubble.py +++ /dev/null @@ -1,10 +0,0 @@ -# doomsdayAOEBubble -# -# Used by: -# Module: Warp Disruption Burst Projector -# Structure Module: Standup Warp Disruption Burst Projector -type = "projected", "active" - - -def handler(fit, module, context): - return diff --git a/eos/effects/doomsdayaoedamp.py b/eos/effects/doomsdayaoedamp.py deleted file mode 100644 index ab55bf185..000000000 --- a/eos/effects/doomsdayaoedamp.py +++ /dev/null @@ -1,17 +0,0 @@ -# doomsdayAOEDamp -# -# Used by: -# Module: Sensor Dampening Burst Projector -# Structure Module: Standup Sensor Dampening Burst Projector -type = "projected", "active" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True, *args, **kwargs) - - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/doomsdayaoeecm.py b/eos/effects/doomsdayaoeecm.py deleted file mode 100644 index 93d3dd847..000000000 --- a/eos/effects/doomsdayaoeecm.py +++ /dev/null @@ -1,19 +0,0 @@ -# doomsdayAOEECM -# -# Used by: -# Module: ECM Jammer Burst Projector -# Structure Module: Standup ECM Jammer Burst Projector -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "projected", "active" - - -def handler(fit, module, context, **kwargs): - if "projected" in context: - # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength - - if 'effect' in kwargs: - strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/doomsdayaoeneut.py b/eos/effects/doomsdayaoeneut.py deleted file mode 100644 index 6f9cd2f5e..000000000 --- a/eos/effects/doomsdayaoeneut.py +++ /dev/null @@ -1,22 +0,0 @@ -# doomsdayAOENeut -# -# Used by: -# Module: Energy Neutralization Burst Projector -# Structure Module: Standup Energy Neutralization Burst Projector -from eos.const import FittingModuleState -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "active", "projected" - - -def handler(fit, src, context, **kwargs): - if "projected" in context and ((hasattr(src, "state") and src.state >= FittingModuleState.ACTIVE) or - hasattr(src, "amountActive")): - amount = src.getModifiedItemAttr("energyNeutralizerAmount") - - if 'effect' in kwargs: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - time = src.getModifiedItemAttr("duration") - - fit.addDrain(src, time, amount, 0) diff --git a/eos/effects/doomsdayaoepaint.py b/eos/effects/doomsdayaoepaint.py deleted file mode 100644 index 1c039c23c..000000000 --- a/eos/effects/doomsdayaoepaint.py +++ /dev/null @@ -1,12 +0,0 @@ -# doomsdayAOEPaint -# -# Used by: -# Module: Target Illumination Burst Projector -# Structure Module: Standup Target Illumination Burst Projector -type = "projected", "active" - - -def handler(fit, container, context, *args, **kwargs): - if "projected" in context: - fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/doomsdayaoetrack.py b/eos/effects/doomsdayaoetrack.py deleted file mode 100644 index 5ee1f31c9..000000000 --- a/eos/effects/doomsdayaoetrack.py +++ /dev/null @@ -1,30 +0,0 @@ -# doomsdayAOETrack -# -# Used by: -# Module: Weapon Disruption Burst Projector -# Structure Module: Standup Weapon Disruption Burst Projector - -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - 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, module.getModifiedItemAttr(srcAttr), - stackingPenalties=True, *args, **kwargs) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/doomsdayaoeweb.py b/eos/effects/doomsdayaoeweb.py deleted file mode 100644 index eb143b14b..000000000 --- a/eos/effects/doomsdayaoeweb.py +++ /dev/null @@ -1,13 +0,0 @@ -# doomsdayAOEWeb -# -# Used by: -# Module: Stasis Webification Burst Projector -# Structure Module: Standup Stasis Webification Burst Projector -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/doomsdaybeamdot.py b/eos/effects/doomsdaybeamdot.py deleted file mode 100644 index b97beb097..000000000 --- a/eos/effects/doomsdaybeamdot.py +++ /dev/null @@ -1,9 +0,0 @@ -# doomsdayBeamDOT -# -# Used by: -# Modules named like: Lance (4 of 4) -type = "active" - - -def handler(fit, src, context): - pass diff --git a/eos/effects/doomsdayconedot.py b/eos/effects/doomsdayconedot.py deleted file mode 100644 index 3e92fb8f6..000000000 --- a/eos/effects/doomsdayconedot.py +++ /dev/null @@ -1,9 +0,0 @@ -# doomsdayConeDOT -# -# Used by: -# Module: Bosonic Field Generator -type = "active" - - -def handler(fit, src, context): - pass diff --git a/eos/effects/doomsdayhog.py b/eos/effects/doomsdayhog.py deleted file mode 100644 index 4e0fcc1dd..000000000 --- a/eos/effects/doomsdayhog.py +++ /dev/null @@ -1,9 +0,0 @@ -# doomsdayHOG -# -# Used by: -# Module: Gravitational Transportation Field Oscillator -type = "active" - - -def handler(fit, src, context): - pass diff --git a/eos/effects/doomsdayslash.py b/eos/effects/doomsdayslash.py deleted file mode 100644 index 934766b11..000000000 --- a/eos/effects/doomsdayslash.py +++ /dev/null @@ -1,9 +0,0 @@ -# doomsdaySlash -# -# Used by: -# Modules named like: Reaper (4 of 4) -type = "active" - - -def handler(fit, src, context): - pass diff --git a/eos/effects/drawbackarmorhp.py b/eos/effects/drawbackarmorhp.py deleted file mode 100644 index 94c4fb0ff..000000000 --- a/eos/effects/drawbackarmorhp.py +++ /dev/null @@ -1,9 +0,0 @@ -# drawbackArmorHP -# -# Used by: -# Modules from group: Rig Navigation (48 of 64) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcapreppgneed.py b/eos/effects/drawbackcapreppgneed.py deleted file mode 100644 index e5812f575..000000000 --- a/eos/effects/drawbackcapreppgneed.py +++ /dev/null @@ -1,11 +0,0 @@ -# drawbackCapRepPGNeed -# -# Used by: -# Variations of module: Capital Auxiliary Nano Pump I (2 of 2) -# Variations of module: Capital Nanobot Accelerator I (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), - "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcargocapacity.py b/eos/effects/drawbackcargocapacity.py deleted file mode 100644 index 07f5bf171..000000000 --- a/eos/effects/drawbackcargocapacity.py +++ /dev/null @@ -1,9 +0,0 @@ -# drawbackCargoCapacity -# -# Used by: -# Modules named like: Transverse Bulkhead (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("capacity", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcpuneedlaunchers.py b/eos/effects/drawbackcpuneedlaunchers.py deleted file mode 100644 index cb22a2523..000000000 --- a/eos/effects/drawbackcpuneedlaunchers.py +++ /dev/null @@ -1,10 +0,0 @@ -# drawbackCPUNeedLaunchers -# -# Used by: -# Modules from group: Rig Launcher (48 of 48) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "cpu", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackcpuoutput.py b/eos/effects/drawbackcpuoutput.py deleted file mode 100644 index 659199ee1..000000000 --- a/eos/effects/drawbackcpuoutput.py +++ /dev/null @@ -1,9 +0,0 @@ -# drawbackCPUOutput -# -# Used by: -# Modules from group: Rig Drones (58 of 64) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("cpuOutput", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackmaxvelocity.py b/eos/effects/drawbackmaxvelocity.py deleted file mode 100644 index 8bdd806ae..000000000 --- a/eos/effects/drawbackmaxvelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# drawbackMaxVelocity -# -# Used by: -# Modules from group: Rig Armor (48 of 72) -# Modules from group: Rig Resource Processing (8 of 10) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("drawback"), - stackingPenalties=True) diff --git a/eos/effects/drawbackpowerneedhybrids.py b/eos/effects/drawbackpowerneedhybrids.py deleted file mode 100644 index 68a8c4233..000000000 --- a/eos/effects/drawbackpowerneedhybrids.py +++ /dev/null @@ -1,10 +0,0 @@ -# drawbackPowerNeedHybrids -# -# Used by: -# Modules from group: Rig Hybrid Weapon (56 of 56) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackpowerneedlasers.py b/eos/effects/drawbackpowerneedlasers.py deleted file mode 100644 index addcabb17..000000000 --- a/eos/effects/drawbackpowerneedlasers.py +++ /dev/null @@ -1,10 +0,0 @@ -# drawbackPowerNeedLasers -# -# Used by: -# Modules from group: Rig Energy Weapon (56 of 56) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackpowerneedprojectiles.py b/eos/effects/drawbackpowerneedprojectiles.py deleted file mode 100644 index 0f8490bfd..000000000 --- a/eos/effects/drawbackpowerneedprojectiles.py +++ /dev/null @@ -1,10 +0,0 @@ -# drawbackPowerNeedProjectiles -# -# Used by: -# Modules from group: Rig Projectile Weapon (40 of 40) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", - "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackrepairsystemspgneed.py b/eos/effects/drawbackrepairsystemspgneed.py deleted file mode 100644 index 1eba7dc3c..000000000 --- a/eos/effects/drawbackrepairsystemspgneed.py +++ /dev/null @@ -1,11 +0,0 @@ -# drawbackRepairSystemsPGNeed -# -# Used by: -# Modules named like: Auxiliary Nano Pump (6 of 8) -# Modules named like: Nanobot Accelerator (6 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "power", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbackshieldcapacity.py b/eos/effects/drawbackshieldcapacity.py deleted file mode 100644 index 84887a559..000000000 --- a/eos/effects/drawbackshieldcapacity.py +++ /dev/null @@ -1,11 +0,0 @@ -# drawbackShieldCapacity -# -# Used by: -# Modules from group: Rig Electronic Systems (40 of 48) -# Modules from group: Rig Targeting (16 of 16) -# Modules named like: Signal Focusing Kit (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("shieldCapacity", module.getModifiedItemAttr("drawback")) diff --git a/eos/effects/drawbacksigrad.py b/eos/effects/drawbacksigrad.py deleted file mode 100644 index 176bdd423..000000000 --- a/eos/effects/drawbacksigrad.py +++ /dev/null @@ -1,10 +0,0 @@ -# drawbackSigRad -# -# Used by: -# Modules from group: Rig Shield (72 of 72) -# Modules named like: Optimizer (16 of 16) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("drawback"), stackingPenalties=True) diff --git a/eos/effects/drawbackwarpspeed.py b/eos/effects/drawbackwarpspeed.py deleted file mode 100644 index a37a3e441..000000000 --- a/eos/effects/drawbackwarpspeed.py +++ /dev/null @@ -1,9 +0,0 @@ -# drawbackWarpSpeed -# -# Used by: -# Modules from group: Rig Anchor (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", module.getModifiedItemAttr("drawback"), stackingPenalties=True) diff --git a/eos/effects/dronearmordamagebonuseffect.py b/eos/effects/dronearmordamagebonuseffect.py deleted file mode 100644 index a5cfb52fe..000000000 --- a/eos/effects/dronearmordamagebonuseffect.py +++ /dev/null @@ -1,14 +0,0 @@ -# droneArmorDamageBonusEffect -# -# Used by: -# Ships from group: Logistics (6 of 7) -# Ship: Exequror -# Ship: Scythe -type = "passive" - - -def handler(fit, ship, context): - # This is actually level-less bonus, anyway you have to train cruisers 5 - # and will get 100% (20%/lvl as stated by description) - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", - "armorDamageAmount", ship.getModifiedItemAttr("droneArmorDamageAmountBonus")) diff --git a/eos/effects/dronebandwidthaddpassive.py b/eos/effects/dronebandwidthaddpassive.py deleted file mode 100644 index 704fa8177..000000000 --- a/eos/effects/dronebandwidthaddpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# droneBandwidthAddPassive -# -# Used by: -# Subsystems from group: Offensive Systems (12 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("droneBandwidth", module.getModifiedItemAttr("droneBandwidth")) diff --git a/eos/effects/dronecapacityadddronecapacitypassive.py b/eos/effects/dronecapacityadddronecapacitypassive.py deleted file mode 100644 index 83222cb93..000000000 --- a/eos/effects/dronecapacityadddronecapacitypassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# droneCapacityAdddroneCapacityPassive -# -# Used by: -# Subsystems from group: Offensive Systems (12 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("droneCapacity", module.getModifiedItemAttr("droneCapacity")) diff --git a/eos/effects/dronedmgbonus.py b/eos/effects/dronedmgbonus.py deleted file mode 100644 index 2256ff5b4..000000000 --- a/eos/effects/dronedmgbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# droneDmgBonus -# -# Used by: -# Skills from group: Drones (8 of 26) -type = "passive" - - -def handler(fit, skill, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill(skill), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/dronedurabilityarmorhpbonus.py b/eos/effects/dronedurabilityarmorhpbonus.py deleted file mode 100644 index 9f22fa762..000000000 --- a/eos/effects/dronedurabilityarmorhpbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# droneDurabilityArmorHPBonus -# -# Used by: -# Modules named like: Drone Durability Enhancer (6 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", module.getModifiedItemAttr("hullHpBonus")) diff --git a/eos/effects/dronedurabilityhpbonus.py b/eos/effects/dronedurabilityhpbonus.py deleted file mode 100644 index cbd2fb065..000000000 --- a/eos/effects/dronedurabilityhpbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# droneDurabilityHPBonus -# -# Used by: -# Modules named like: Drone Durability Enhancer (6 of 8) -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "hp", container.getModifiedItemAttr("hullHpBonus") * level) diff --git a/eos/effects/dronedurabilityshieldcapbonus.py b/eos/effects/dronedurabilityshieldcapbonus.py deleted file mode 100644 index 75f7c1ca7..000000000 --- a/eos/effects/dronedurabilityshieldcapbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# droneDurabilityShieldCapBonus -# -# Used by: -# Modules named like: Drone Durability Enhancer (6 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", module.getModifiedItemAttr("hullHpBonus")) diff --git a/eos/effects/dronehullrepairbonuseffect.py b/eos/effects/dronehullrepairbonuseffect.py deleted file mode 100644 index 532f3e28e..000000000 --- a/eos/effects/dronehullrepairbonuseffect.py +++ /dev/null @@ -1,12 +0,0 @@ -# droneHullRepairBonusEffect -# -# Used by: -# Ships from group: Logistics (6 of 7) -# Ship: Exequror -# Ship: Scythe -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", "structureDamageAmount", - src.getModifiedItemAttr("droneArmorDamageAmountBonus")) diff --git a/eos/effects/dronemaxrangebonus.py b/eos/effects/dronemaxrangebonus.py deleted file mode 100644 index fba4a35bc..000000000 --- a/eos/effects/dronemaxrangebonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# droneMaxRangeBonus -# -# Used by: -# Modules named like: Drone Scope Chip (6 of 8) -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - stacking = False if "skill" in context else True - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxRange", - container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties=stacking) diff --git a/eos/effects/dronemaxvelocitybonus.py b/eos/effects/dronemaxvelocitybonus.py deleted file mode 100644 index 9ab5f4af0..000000000 --- a/eos/effects/dronemaxvelocitybonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# droneMaxVelocityBonus -# -# Used by: -# Modules named like: Drone Speed Augmentor (6 of 8) -# Implant: Overmind 'Goliath' Drone Tuner T25-10S -# Implant: Overmind 'Hawkmoth' Drone Tuner S10-25T -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxVelocity", container.getModifiedItemAttr("droneMaxVelocityBonus") * level, stackingPenalties=True) diff --git a/eos/effects/dronerangebonusadd.py b/eos/effects/dronerangebonusadd.py deleted file mode 100644 index 790825723..000000000 --- a/eos/effects/dronerangebonusadd.py +++ /dev/null @@ -1,10 +0,0 @@ -# droneRangeBonusAdd -# -# Used by: -# Modules from group: Drone Control Range Module (7 of 7) -type = "passive" - - -def handler(fit, module, context): - amount = module.getModifiedItemAttr("droneRangeBonus") - fit.extraAttributes.increase("droneControlRange", amount) diff --git a/eos/effects/dronerigstasiswebspeedfactorbonus.py b/eos/effects/dronerigstasiswebspeedfactorbonus.py deleted file mode 100644 index 7f060a291..000000000 --- a/eos/effects/dronerigstasiswebspeedfactorbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# droneRigStasisWebSpeedFactorBonus -# -# Used by: -# Modules named like: Stasis Drone Augmentor (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Stasis Webifying Drone", - "speedFactor", module.getModifiedItemAttr("webSpeedFactorBonus")) diff --git a/eos/effects/dronesalvagebonus.py b/eos/effects/dronesalvagebonus.py deleted file mode 100644 index 1e9deef53..000000000 --- a/eos/effects/dronesalvagebonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# droneSalvageBonus -# -# Used by: -# Skill: Salvage Drone Operation -type = "passive" - - -def handler(fit, container, context): - fit.drones.filteredItemIncrease(lambda drone: drone.item.requiresSkill("Salvage Drone Operation"), - "accessDifficultyBonus", - container.getModifiedItemAttr("accessDifficultyBonus") * container.level) diff --git a/eos/effects/droneshieldbonusbonuseffect.py b/eos/effects/droneshieldbonusbonuseffect.py deleted file mode 100644 index 2f2d1e6c5..000000000 --- a/eos/effects/droneshieldbonusbonuseffect.py +++ /dev/null @@ -1,14 +0,0 @@ -# droneShieldBonusBonusEffect -# -# Used by: -# Ships from group: Logistics (6 of 7) -# Ship: Exequror -# Ship: Scythe -type = "passive" - - -def handler(fit, ship, context): - # This is actually level-less bonus, anyway you have to train cruisers 5 - # and will get 100% (20%/lvl as stated by description) - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", - "shieldBonus", ship.getModifiedItemAttr("droneShieldBonusBonus")) diff --git a/eos/effects/dronesskillboostmaxactivedronebonus.py b/eos/effects/dronesskillboostmaxactivedronebonus.py deleted file mode 100644 index aae3f84a7..000000000 --- a/eos/effects/dronesskillboostmaxactivedronebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# dronesSkillBoostMaxActiveDroneBonus -# -# Used by: -# Skill: Drones -type = "passive" - - -def handler(fit, skill, context): - amount = skill.getModifiedItemAttr("maxActiveDroneBonus") * skill.level - fit.extraAttributes.increase("maxActiveDrones", amount) diff --git a/eos/effects/durationbonusforgroupafterburner.py b/eos/effects/durationbonusforgroupafterburner.py deleted file mode 100644 index d193ca6ef..000000000 --- a/eos/effects/durationbonusforgroupafterburner.py +++ /dev/null @@ -1,10 +0,0 @@ -# durationBonusForGroupAfterburner -# -# Used by: -# Modules named like: Engine Thermal Shielding (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "duration", module.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/ecmburstjammer.py b/eos/effects/ecmburstjammer.py deleted file mode 100644 index f21b89391..000000000 --- a/eos/effects/ecmburstjammer.py +++ /dev/null @@ -1,18 +0,0 @@ -# ECMBurstJammer -# -# Used by: -# Modules from group: Burst Jammer (11 of 11) -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "projected", "active" - - -def handler(fit, module, context, **kwargs): - if "projected" in context: - # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength - - if 'effect' in kwargs: - strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/ecmgravimetricstrengthbonuspercent.py b/eos/effects/ecmgravimetricstrengthbonuspercent.py deleted file mode 100644 index 35bac7668..000000000 --- a/eos/effects/ecmgravimetricstrengthbonuspercent.py +++ /dev/null @@ -1,11 +0,0 @@ -# ecmGravimetricStrengthBonusPercent -# -# Used by: -# Modules from group: ECM Stabilizer (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanGravimetricStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties=True) diff --git a/eos/effects/ecmladarstrengthbonuspercent.py b/eos/effects/ecmladarstrengthbonuspercent.py deleted file mode 100644 index 1ff5830a8..000000000 --- a/eos/effects/ecmladarstrengthbonuspercent.py +++ /dev/null @@ -1,11 +0,0 @@ -# ecmLadarStrengthBonusPercent -# -# Used by: -# Modules from group: ECM Stabilizer (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanLadarStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties=True) diff --git a/eos/effects/ecmmagnetometricstrengthbonuspercent.py b/eos/effects/ecmmagnetometricstrengthbonuspercent.py deleted file mode 100644 index 84eb6163d..000000000 --- a/eos/effects/ecmmagnetometricstrengthbonuspercent.py +++ /dev/null @@ -1,12 +0,0 @@ -# ecmMagnetometricStrengthBonusPercent -# -# Used by: -# Modules from group: ECM Stabilizer (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanMagnetometricStrengthBonus", - module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties=True) diff --git a/eos/effects/ecmradarstrengthbonuspercent.py b/eos/effects/ecmradarstrengthbonuspercent.py deleted file mode 100644 index a70573cdc..000000000 --- a/eos/effects/ecmradarstrengthbonuspercent.py +++ /dev/null @@ -1,11 +0,0 @@ -# ecmRadarStrengthBonusPercent -# -# Used by: -# Modules from group: ECM Stabilizer (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanRadarStrengthBonus", module.getModifiedItemAttr("ecmStrengthBonusPercent"), - stackingPenalties=True) diff --git a/eos/effects/ecmrangebonusmoduleeffect.py b/eos/effects/ecmrangebonusmoduleeffect.py deleted file mode 100644 index 5300152bc..000000000 --- a/eos/effects/ecmrangebonusmoduleeffect.py +++ /dev/null @@ -1,11 +0,0 @@ -# ecmRangeBonusModuleEffect -# -# Used by: -# Modules from group: ECM Stabilizer (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", module.getModifiedItemAttr("ecmRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/electronicattributemodifyonline.py b/eos/effects/electronicattributemodifyonline.py deleted file mode 100644 index 9e1f52524..000000000 --- a/eos/effects/electronicattributemodifyonline.py +++ /dev/null @@ -1,9 +0,0 @@ -# electronicAttributeModifyOnline -# -# Used by: -# Modules from group: Automated Targeting System (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargetsBonus")) diff --git a/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py b/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py deleted file mode 100644 index 7a6b5a0d5..000000000 --- a/eos/effects/electronicscpuoutputbonuspostpercentcpuoutputlocationshipgroupcomputer.py +++ /dev/null @@ -1,14 +0,0 @@ -# electronicsCpuOutputBonusPostPercentCpuOutputLocationShipGroupComputer -# -# Used by: -# Implants named like: Zainou 'Gypsy' CPU Management EE (6 of 6) -# Modules named like: Processor Overclocking Unit (8 of 8) -# Subsystems named like: Core Electronic Efficiency Gate (2 of 2) -# Implant: Genolution Core Augmentation CA-2 -# Skill: CPU Management -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("cpuOutput", container.getModifiedItemAttr("cpuOutputBonus2") * level) diff --git a/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py b/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py deleted file mode 100644 index 0ae042d2d..000000000 --- a/eos/effects/elitebargebonusiceharvestingcycletimebarge3.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBargeBonusIceHarvestingCycleTimeBarge3 -# -# Used by: -# Ships from group: Exhumer (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", ship.getModifiedItemAttr("eliteBonusBarge2"), skill="Exhumers") diff --git a/eos/effects/elitebargebonusminingdurationbarge2.py b/eos/effects/elitebargebonusminingdurationbarge2.py deleted file mode 100644 index 6009d9542..000000000 --- a/eos/effects/elitebargebonusminingdurationbarge2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBargeBonusMiningDurationBarge2 -# -# Used by: -# Ships from group: Exhumer (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "duration", ship.getModifiedItemAttr("eliteBonusBarge2"), skill="Exhumers") diff --git a/eos/effects/elitebargeshieldresistance1.py b/eos/effects/elitebargeshieldresistance1.py deleted file mode 100644 index 33f370af1..000000000 --- a/eos/effects/elitebargeshieldresistance1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBargeShieldResistance1 -# -# Used by: -# Ships from group: Exhumer (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "thermal", "explosive", "kinetic"): - fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()), - ship.getModifiedItemAttr("eliteBonusBarge1"), skill="Exhumers") diff --git a/eos/effects/elitebonusassaultshiplightmissilerof.py b/eos/effects/elitebonusassaultshiplightmissilerof.py deleted file mode 100644 index 1f9169e7e..000000000 --- a/eos/effects/elitebonusassaultshiplightmissilerof.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusAssaultShipLightMissileROF -# -# Used by: -# Ship: Cambion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Light", - "speed", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusassaultshipmissilevelocity1.py b/eos/effects/elitebonusassaultshipmissilevelocity1.py deleted file mode 100644 index 2031a3db3..000000000 --- a/eos/effects/elitebonusassaultshipmissilevelocity1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusAssaultShipMissileVelocity1 -# -# Used by: -# Ship: Hawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusGunship1"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusassaultshiprocketrof.py b/eos/effects/elitebonusassaultshiprocketrof.py deleted file mode 100644 index 4d7622063..000000000 --- a/eos/effects/elitebonusassaultshiprocketrof.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusAssaultShipRocketROF -# -# Used by: -# Ship: Cambion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rocket", - "speed", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusblackopsagiliy1.py b/eos/effects/elitebonusblackopsagiliy1.py deleted file mode 100644 index d5a92e778..000000000 --- a/eos/effects/elitebonusblackopsagiliy1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusBlackOpsAgiliy1 -# -# Used by: -# Ship: Sin -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopscloakvelocity2.py b/eos/effects/elitebonusblackopscloakvelocity2.py deleted file mode 100644 index af6239d41..000000000 --- a/eos/effects/elitebonusblackopscloakvelocity2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusBlackOpsCloakVelocity2 -# -# Used by: -# Ships from group: Black Ops (5 of 5) -type = "passive" - - -def handler(fit, ship, context): - if fit.extraAttributes["cloaked"]: - fit.ship.multiplyItemAttr("maxVelocity", ship.getModifiedItemAttr("eliteBonusBlackOps2"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py b/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py deleted file mode 100644 index dc9741208..000000000 --- a/eos/effects/elitebonusblackopsecmburstgravandladarandmagnetoandradar.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteBonusBlackOpsECMBurstGravAndLadarAndMagnetoAndRadar -# -# Used by: -# Ship: Widow -type = "passive" - - -def handler(fit, ship, context): - sensorTypes = ("Gravimetric", "Ladar", "Magnetometric", "Radar") - for type in sensorTypes: - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", - "scan{0}StrengthBonus".format(type), - ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py b/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py deleted file mode 100644 index 6fb22fc13..000000000 --- a/eos/effects/elitebonusblackopsecmgravandladarandmagnetometricandradarstrength1.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusBlackOpsECMGravAndLadarAndMagnetometricAndRadarStrength1 -# -# Used by: -# Ship: Widow -type = "passive" - - -def handler(fit, ship, context): - sensorTypes = ("Gravimetric", "Ladar", "Magnetometric", "Radar") - for type in sensorTypes: - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scan{0}StrengthBonus".format(type), - ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopslargeenergyturrettracking1.py b/eos/effects/elitebonusblackopslargeenergyturrettracking1.py deleted file mode 100644 index 0d20b2c44..000000000 --- a/eos/effects/elitebonusblackopslargeenergyturrettracking1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusBlackOpsLargeEnergyTurretTracking1 -# -# Used by: -# Ship: Redeemer -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsmaxvelocity1.py b/eos/effects/elitebonusblackopsmaxvelocity1.py deleted file mode 100644 index 8fe20233c..000000000 --- a/eos/effects/elitebonusblackopsmaxvelocity1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusBlackOpsMaxVelocity1 -# -# Used by: -# Ship: Panther -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("eliteBonusBlackOps1"), skill="Black Ops") diff --git a/eos/effects/elitebonusblackopsscramblerrange4.py b/eos/effects/elitebonusblackopsscramblerrange4.py deleted file mode 100644 index 67519dc01..000000000 --- a/eos/effects/elitebonusblackopsscramblerrange4.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusBlackOpsScramblerRange4 -# -# Used by: -# Ship: Marshal -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", - src.getModifiedItemAttr("eliteBonusBlackOps4"), stackingPenalties=True, skill="Black Ops") diff --git a/eos/effects/elitebonusblackopswarpvelocity1.py b/eos/effects/elitebonusblackopswarpvelocity1.py deleted file mode 100644 index b3f824494..000000000 --- a/eos/effects/elitebonusblackopswarpvelocity1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusBlackOpsWarpVelocity1 -# -# Used by: -# Ship: Marshal -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("eliteBonusBlackOps1"), stackingPenalties=True, skill="Black Ops") diff --git a/eos/effects/elitebonusblackopswebrange3.py b/eos/effects/elitebonusblackopswebrange3.py deleted file mode 100644 index c1ea901de..000000000 --- a/eos/effects/elitebonusblackopswebrange3.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusBlackOpsWebRange3 -# -# Used by: -# Ship: Marshal -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", - src.getModifiedItemAttr("eliteBonusBlackOps3"), stackingPenalties=True, skill="Black Ops") diff --git a/eos/effects/elitebonuscommanddestroyerarmored1.py b/eos/effects/elitebonuscommanddestroyerarmored1.py deleted file mode 100644 index 83df03351..000000000 --- a/eos/effects/elitebonuscommanddestroyerarmored1.py +++ /dev/null @@ -1,19 +0,0 @@ -# eliteBonusCommandDestroyerArmored1 -# -# Used by: -# Ship: Magus -# Ship: Pontifex -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyerinfo1.py b/eos/effects/elitebonuscommanddestroyerinfo1.py deleted file mode 100644 index 2f17453b2..000000000 --- a/eos/effects/elitebonuscommanddestroyerinfo1.py +++ /dev/null @@ -1,19 +0,0 @@ -# eliteBonusCommandDestroyerInfo1 -# -# Used by: -# Ship: Pontifex -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyermjfgspool2.py b/eos/effects/elitebonuscommanddestroyermjfgspool2.py deleted file mode 100644 index 1b9aa7af9..000000000 --- a/eos/effects/elitebonuscommanddestroyermjfgspool2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCommandDestroyerMJFGspool2 -# -# Used by: -# Ships from group: Command Destroyer (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), "duration", - src.getModifiedItemAttr("eliteBonusCommandDestroyer2"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyershield1.py b/eos/effects/elitebonuscommanddestroyershield1.py deleted file mode 100644 index 03c2e2b8e..000000000 --- a/eos/effects/elitebonuscommanddestroyershield1.py +++ /dev/null @@ -1,19 +0,0 @@ -# eliteBonusCommandDestroyerShield1 -# -# Used by: -# Ship: Bifrost -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommanddestroyerskirmish1.py b/eos/effects/elitebonuscommanddestroyerskirmish1.py deleted file mode 100644 index b33bdfa02..000000000 --- a/eos/effects/elitebonuscommanddestroyerskirmish1.py +++ /dev/null @@ -1,19 +0,0 @@ -# eliteBonusCommandDestroyerSkirmish1 -# -# Used by: -# Ship: Bifrost -# Ship: Magus -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandDestroyer1"), skill="Command Destroyers") diff --git a/eos/effects/elitebonuscommandshiparmoredcs3.py b/eos/effects/elitebonuscommandshiparmoredcs3.py deleted file mode 100644 index d7bc3fc46..000000000 --- a/eos/effects/elitebonuscommandshiparmoredcs3.py +++ /dev/null @@ -1,18 +0,0 @@ -# eliteBonusCommandShipArmoredCS3 -# -# Used by: -# Ships from group: Command Ship (4 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiparmorhp1.py b/eos/effects/elitebonuscommandshiparmorhp1.py deleted file mode 100644 index c8492c130..000000000 --- a/eos/effects/elitebonuscommandshiparmorhp1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusCommandShipArmorHP1 -# -# Used by: -# Ship: Damnation -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphamrofcs1.py b/eos/effects/elitebonuscommandshiphamrofcs1.py deleted file mode 100644 index d57f9df19..000000000 --- a/eos/effects/elitebonuscommandshiphamrofcs1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipHAMRoFCS1 -# -# Used by: -# Ship: Claymore -# Ship: Nighthawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py b/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py deleted file mode 100644 index 866509be5..000000000 --- a/eos/effects/elitebonuscommandshipheavyassaultmissiledamagecs2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteBonusCommandShipHeavyAssaultMissileDamageCS2 -# -# Used by: -# Ship: Damnation -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("em", "explosive", "kinetic", "thermal") - for damageType in damageTypes: - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "{0}Damage".format(damageType), - ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py b/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py deleted file mode 100644 index 7e359e3e0..000000000 --- a/eos/effects/elitebonuscommandshipheavydronetrackingcs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipHeavyDroneTrackingCS2 -# -# Used by: -# Ship: Eos -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py b/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py deleted file mode 100644 index 8b105c48a..000000000 --- a/eos/effects/elitebonuscommandshipheavydronevelocitycs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipHeavyDroneVelocityCS2 -# -# Used by: -# Ship: Eos -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py b/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py deleted file mode 100644 index f6f10902c..000000000 --- a/eos/effects/elitebonuscommandshipheavymissiledamagecs2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteBonusCommandShipHeavyMissileDamageCS2 -# -# Used by: -# Ship: Damnation -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("em", "explosive", "kinetic", "thermal") - for damageType in damageTypes: - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "{0}Damage".format(damageType), - ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphmrofcs1.py b/eos/effects/elitebonuscommandshiphmrofcs1.py deleted file mode 100644 index 2907e0885..000000000 --- a/eos/effects/elitebonuscommandshiphmrofcs1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipHMRoFCS1 -# -# Used by: -# Ship: Claymore -# Ship: Nighthawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphybridfalloffcs2.py b/eos/effects/elitebonuscommandshiphybridfalloffcs2.py deleted file mode 100644 index a2a89d17d..000000000 --- a/eos/effects/elitebonuscommandshiphybridfalloffcs2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCommandShipHybridFalloffCS2 -# -# Used by: -# Ship: Astarte -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiphybridoptimalcs1.py b/eos/effects/elitebonuscommandshiphybridoptimalcs1.py deleted file mode 100644 index c26d77ef6..000000000 --- a/eos/effects/elitebonuscommandshiphybridoptimalcs1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipHybridOptimalCS1 -# -# Used by: -# Ship: Vulture -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusCommandShips1"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipinformationcs3.py b/eos/effects/elitebonuscommandshipinformationcs3.py deleted file mode 100644 index 283cc76d6..000000000 --- a/eos/effects/elitebonuscommandshipinformationcs3.py +++ /dev/null @@ -1,18 +0,0 @@ -# eliteBonusCommandShipInformationCS3 -# -# Used by: -# Ships from group: Command Ship (4 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiplaserdamagecs1.py b/eos/effects/elitebonuscommandshiplaserdamagecs1.py deleted file mode 100644 index a14f6cd70..000000000 --- a/eos/effects/elitebonuscommandshiplaserdamagecs1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipLaserDamageCS1 -# -# Used by: -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips1"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshiplaserrofcs2.py b/eos/effects/elitebonuscommandshiplaserrofcs2.py deleted file mode 100644 index 50b0624e1..000000000 --- a/eos/effects/elitebonuscommandshiplaserrofcs2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCommandShipLaserROFCS2 -# -# Used by: -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "speed", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py b/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py deleted file mode 100644 index 5f491a84b..000000000 --- a/eos/effects/elitebonuscommandshipmediumhybriddamagecs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipMediumHybridDamageCS2 -# -# Used by: -# Ship: Vulture -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py b/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py deleted file mode 100644 index b7cec2d64..000000000 --- a/eos/effects/elitebonuscommandshipmediumhybridrofcs1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCommandShipMediumHybridRoFCS1 -# -# Used by: -# Ship: Astarte -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "speed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py b/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py deleted file mode 100644 index 5d855b11c..000000000 --- a/eos/effects/elitebonuscommandshipmediumhybridtrackingcs1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipMediumHybridTrackingCS1 -# -# Used by: -# Ship: Eos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusCommandShips1"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipprojectiledamagecs1.py b/eos/effects/elitebonuscommandshipprojectiledamagecs1.py deleted file mode 100644 index c6fdde891..000000000 --- a/eos/effects/elitebonuscommandshipprojectiledamagecs1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipProjectileDamageCS1 -# -# Used by: -# Ship: Sleipnir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusCommandShips1"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py b/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py deleted file mode 100644 index 074b7aaad..000000000 --- a/eos/effects/elitebonuscommandshipprojectilefalloffcs2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCommandShipProjectileFalloffCS2 -# -# Used by: -# Ship: Sleipnir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusCommandShips2"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py b/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py deleted file mode 100644 index dc04674b7..000000000 --- a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionradiuscs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipsHeavyAssaultMissileExplosionRadiusCS2 -# -# Used by: -# Ship: Nighthawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py b/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py deleted file mode 100644 index 45b63167c..000000000 --- a/eos/effects/elitebonuscommandshipsheavyassaultmissileexplosionvelocitycs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipsHeavyAssaultMissileExplosionVelocityCS2 -# -# Used by: -# Ship: Claymore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py b/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py deleted file mode 100644 index 7200ea677..000000000 --- a/eos/effects/elitebonuscommandshipsheavymissileexplosionradiuscs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipsHeavyMissileExplosionRadiusCS2 -# -# Used by: -# Ship: Nighthawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py b/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py deleted file mode 100644 index af5122311..000000000 --- a/eos/effects/elitebonuscommandshipsheavymissileexplosionvelocitycs2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCommandShipsHeavyMissileExplosionVelocityCS2 -# -# Used by: -# Ship: Claymore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("eliteBonusCommandShips2"), - skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipsiegecs3.py b/eos/effects/elitebonuscommandshipsiegecs3.py deleted file mode 100644 index a17eb44dc..000000000 --- a/eos/effects/elitebonuscommandshipsiegecs3.py +++ /dev/null @@ -1,18 +0,0 @@ -# eliteBonusCommandShipSiegeCS3 -# -# Used by: -# Ships from group: Command Ship (4 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") diff --git a/eos/effects/elitebonuscommandshipskirmishcs3.py b/eos/effects/elitebonuscommandshipskirmishcs3.py deleted file mode 100644 index 345191164..000000000 --- a/eos/effects/elitebonuscommandshipskirmishcs3.py +++ /dev/null @@ -1,18 +0,0 @@ -# eliteBonusCommandShipSkirmishCS3 -# -# Used by: -# Ships from group: Command Ship (4 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff2Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff1Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff3Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff4Value", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "buffDuration", - src.getModifiedItemAttr("eliteBonusCommandShips3"), skill="Command Ships") diff --git a/eos/effects/elitebonuscoveropsbombemdmg1.py b/eos/effects/elitebonuscoveropsbombemdmg1.py deleted file mode 100644 index e9ac65114..000000000 --- a/eos/effects/elitebonuscoveropsbombemdmg1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCoverOpsBombEmDmg1 -# -# Used by: -# Ship: Purifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "emDamage", ship.getModifiedItemAttr("eliteBonusCovertOps1"), skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsbombexplosivedmg1.py b/eos/effects/elitebonuscoveropsbombexplosivedmg1.py deleted file mode 100644 index efc729b51..000000000 --- a/eos/effects/elitebonuscoveropsbombexplosivedmg1.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusCoverOpsBombExplosiveDmg1 -# -# Used by: -# Ship: Hound -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "explosiveDamage", ship.getModifiedItemAttr("eliteBonusCovertOps1"), - skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsbombkineticdmg1.py b/eos/effects/elitebonuscoveropsbombkineticdmg1.py deleted file mode 100644 index e44ec9270..000000000 --- a/eos/effects/elitebonuscoveropsbombkineticdmg1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCoverOpsBombKineticDmg1 -# -# Used by: -# Ship: Manticore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusCovertOps1"), - skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsbombthermaldmg1.py b/eos/effects/elitebonuscoveropsbombthermaldmg1.py deleted file mode 100644 index 681231040..000000000 --- a/eos/effects/elitebonuscoveropsbombthermaldmg1.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusCoverOpsBombThermalDmg1 -# -# Used by: -# Ship: Nemesis -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "thermalDamage", ship.getModifiedItemAttr("eliteBonusCovertOps1"), - skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsnosneutfalloff1.py b/eos/effects/elitebonuscoveropsnosneutfalloff1.py deleted file mode 100644 index 8c142334a..000000000 --- a/eos/effects/elitebonuscoveropsnosneutfalloff1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCoverOpsNOSNeutFalloff1 -# -# Used by: -# Ship: Caedes -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Energy Nosferatu", "Energy Neutralizer"), - "falloffEffectiveness", src.getModifiedItemAttr("eliteBonusCovertOps1"), - stackingPenalties=True, skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropsscanprobestrength2.py b/eos/effects/elitebonuscoveropsscanprobestrength2.py deleted file mode 100644 index 77feea510..000000000 --- a/eos/effects/elitebonuscoveropsscanprobestrength2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusCoverOpsScanProbeStrength2 -# -# Used by: -# Ships from group: Covert Ops (8 of 8) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("eliteBonusCovertOps2"), - skill="Covert Ops") diff --git a/eos/effects/elitebonuscoveropswarpvelocity1.py b/eos/effects/elitebonuscoveropswarpvelocity1.py deleted file mode 100644 index 1a25a973a..000000000 --- a/eos/effects/elitebonuscoveropswarpvelocity1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusCoverOpsWarpVelocity1 -# -# Used by: -# Ship: Pacifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("eliteBonusCovertOps1"), skill="Covert Ops") diff --git a/eos/effects/elitebonuscovertops3pctdamagepercycle.py b/eos/effects/elitebonuscovertops3pctdamagepercycle.py deleted file mode 100644 index 550cdc94b..000000000 --- a/eos/effects/elitebonuscovertops3pctdamagepercycle.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCovertOps3PCTdamagePerCycle -# -# Used by: -# Ship: Hydra -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), "damageMultiplierBonusPerCycle", - src.getModifiedItemAttr("eliteBonusCovertOps3"), skill="Covert Ops") diff --git a/eos/effects/elitebonuscovertopsshtdamage3.py b/eos/effects/elitebonuscovertopsshtdamage3.py deleted file mode 100644 index 2a9628566..000000000 --- a/eos/effects/elitebonuscovertopsshtdamage3.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusCovertOpsSHTDamage3 -# -# Used by: -# Ship: Virtuoso -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "damageMultiplier", - src.getModifiedItemAttr("eliteBonusCovertOps3"), skill="Covert Ops") diff --git a/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py b/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py deleted file mode 100644 index bb5fa326e..000000000 --- a/eos/effects/elitebonuselectronicattackshipcapacitorcapacity2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusElectronicAttackShipCapacitorCapacity2 -# -# Used by: -# Ship: Kitsune -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacitorCapacity", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py b/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py deleted file mode 100644 index 4b5fdb0fd..000000000 --- a/eos/effects/elitebonuselectronicattackshipecmoptimalrange1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusElectronicAttackShipECMOptimalRange1 -# -# Used by: -# Ship: Kitsune -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshiprechargerate2.py b/eos/effects/elitebonuselectronicattackshiprechargerate2.py deleted file mode 100644 index b9d5bbf34..000000000 --- a/eos/effects/elitebonuselectronicattackshiprechargerate2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusElectronicAttackShipRechargeRate2 -# -# Used by: -# Ship: Sentinel -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipsignatureradius2.py b/eos/effects/elitebonuselectronicattackshipsignatureradius2.py deleted file mode 100644 index 29dfc8f55..000000000 --- a/eos/effects/elitebonuselectronicattackshipsignatureradius2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusElectronicAttackShipSignatureRadius2 -# -# Used by: -# Ship: Hyena -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py b/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py deleted file mode 100644 index 929219c96..000000000 --- a/eos/effects/elitebonuselectronicattackshipstasiswebmaxrange1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusElectronicAttackShipStasisWebMaxRange1 -# -# Used by: -# Ship: Hyena -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py b/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py deleted file mode 100644 index 63e03d14d..000000000 --- a/eos/effects/elitebonuselectronicattackshipwarpscramblercapneed2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusElectronicAttackShipWarpScramblerCapNeed2 -# -# Used by: -# Ship: Keres -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip2"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py b/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py deleted file mode 100644 index 20e48def7..000000000 --- a/eos/effects/elitebonuselectronicattackshipwarpscramblermaxrange1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusElectronicAttackShipWarpScramblerMaxRange1 -# -# Used by: -# Ship: Keres -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), - skill="Electronic Attack Ships") diff --git a/eos/effects/elitebonusexpeditionmining1.py b/eos/effects/elitebonusexpeditionmining1.py deleted file mode 100644 index 5ca789728..000000000 --- a/eos/effects/elitebonusexpeditionmining1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusExpeditionMining1 -# -# Used by: -# Ship: Prospect -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("eliteBonusExpedition1"), - skill="Expedition Frigates") diff --git a/eos/effects/elitebonusexpeditionsigradius2.py b/eos/effects/elitebonusexpeditionsigradius2.py deleted file mode 100644 index 711200e58..000000000 --- a/eos/effects/elitebonusexpeditionsigradius2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusExpeditionSigRadius2 -# -# Used by: -# Ship: Prospect -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("signatureRadius", ship.getModifiedItemAttr("eliteBonusExpedition2"), - skill="Expedition Frigates") diff --git a/eos/effects/elitebonusflagcruiserallresistances1.py b/eos/effects/elitebonusflagcruiserallresistances1.py deleted file mode 100644 index 5ca4a504d..000000000 --- a/eos/effects/elitebonusflagcruiserallresistances1.py +++ /dev/null @@ -1,20 +0,0 @@ -# eliteBonusFlagCruiserAllResistances1 -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("explosiveDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("thermalDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("kineticDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") - fit.ship.boostItemAttr("emDamageResonance", src.getModifiedItemAttr("eliteBonusFlagCruisers1"), skill="Flag Cruisers") diff --git a/eos/effects/elitebonusgunshiparmoremresistance1.py b/eos/effects/elitebonusgunshiparmoremresistance1.py deleted file mode 100644 index d65a4a148..000000000 --- a/eos/effects/elitebonusgunshiparmoremresistance1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipArmorEmResistance1 -# -# Used by: -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py b/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py deleted file mode 100644 index 937dd7309..000000000 --- a/eos/effects/elitebonusgunshiparmorexplosiveresistance1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipArmorExplosiveResistance1 -# -# Used by: -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiparmorkineticresistance1.py b/eos/effects/elitebonusgunshiparmorkineticresistance1.py deleted file mode 100644 index e9be2dd52..000000000 --- a/eos/effects/elitebonusgunshiparmorkineticresistance1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipArmorKineticResistance1 -# -# Used by: -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiparmorthermalresistance1.py b/eos/effects/elitebonusgunshiparmorthermalresistance1.py deleted file mode 100644 index ef7175b0b..000000000 --- a/eos/effects/elitebonusgunshiparmorthermalresistance1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipArmorThermalResistance1 -# -# Used by: -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("eliteBonusGunship1"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipcaprecharge2.py b/eos/effects/elitebonusgunshipcaprecharge2.py deleted file mode 100644 index ddce4507c..000000000 --- a/eos/effects/elitebonusgunshipcaprecharge2.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusGunshipCapRecharge2 -# -# Used by: -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipemmissiledamage1.py b/eos/effects/elitebonusgunshipemmissiledamage1.py deleted file mode 100644 index ae5a4aed2..000000000 --- a/eos/effects/elitebonusgunshipemmissiledamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipEMMissileDamage1 -# -# Used by: -# Ship: Jaguar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", - src.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipexplosionvelocity2.py b/eos/effects/elitebonusgunshipexplosionvelocity2.py deleted file mode 100644 index e17de01c1..000000000 --- a/eos/effects/elitebonusgunshipexplosionvelocity2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipExplosionVelocity2 -# -# Used by: -# Ship: Jaguar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "aoeVelocity", - src.getModifiedItemAttr("eliteBonusGunship2"), stackingPenalties=True, skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipexplosivemissiledamage1.py b/eos/effects/elitebonusgunshipexplosivemissiledamage1.py deleted file mode 100644 index 626f6ce51..000000000 --- a/eos/effects/elitebonusgunshipexplosivemissiledamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipExplosiveMissileDamage1 -# -# Used by: -# Ship: Jaguar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "explosiveDamage", - src.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiphybriddmg2.py b/eos/effects/elitebonusgunshiphybriddmg2.py deleted file mode 100644 index 2b5b31e5d..000000000 --- a/eos/effects/elitebonusgunshiphybriddmg2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusGunshipHybridDmg2 -# -# Used by: -# Ship: Harpy -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiphybridoptimal1.py b/eos/effects/elitebonusgunshiphybridoptimal1.py deleted file mode 100644 index df9a7dbb0..000000000 --- a/eos/effects/elitebonusgunshiphybridoptimal1.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusGunshipHybridOptimal1 -# -# Used by: -# Ship: Enyo -# Ship: Harpy -# Ship: Ishkur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiphybridtracking2.py b/eos/effects/elitebonusgunshiphybridtracking2.py deleted file mode 100644 index 9fc26ca51..000000000 --- a/eos/effects/elitebonusgunshiphybridtracking2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusGunshipHybridTracking2 -# -# Used by: -# Ship: Enyo -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusGunship2"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipkineticmissiledamage1.py b/eos/effects/elitebonusgunshipkineticmissiledamage1.py deleted file mode 100644 index 18afde89e..000000000 --- a/eos/effects/elitebonusgunshipkineticmissiledamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipKineticMissileDamage1 -# -# Used by: -# Ship: Jaguar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", - src.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiplaserdamage2.py b/eos/effects/elitebonusgunshiplaserdamage2.py deleted file mode 100644 index 198854651..000000000 --- a/eos/effects/elitebonusgunshiplaserdamage2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusGunshipLaserDamage2 -# -# Used by: -# Ship: Retribution -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship2"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshiplaseroptimal1.py b/eos/effects/elitebonusgunshiplaseroptimal1.py deleted file mode 100644 index ea410651b..000000000 --- a/eos/effects/elitebonusgunshiplaseroptimal1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipLaserOptimal1 -# -# Used by: -# Ship: Retribution -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipprojectiledamage1.py b/eos/effects/elitebonusgunshipprojectiledamage1.py deleted file mode 100644 index f0545ec68..000000000 --- a/eos/effects/elitebonusgunshipprojectiledamage1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusGunshipProjectileDamage1 -# -# Used by: -# Ship: Wolf -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusGunship1"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipprojectilefalloff2.py b/eos/effects/elitebonusgunshipprojectilefalloff2.py deleted file mode 100644 index df8ed9532..000000000 --- a/eos/effects/elitebonusgunshipprojectilefalloff2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipProjectileFalloff2 -# -# Used by: -# Ship: Wolf -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipshieldboost2.py b/eos/effects/elitebonusgunshipshieldboost2.py deleted file mode 100644 index 883b11110..000000000 --- a/eos/effects/elitebonusgunshipshieldboost2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusGunshipShieldBoost2 -# -# Used by: -# Ship: Hawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("eliteBonusGunship2"), - skill="Assault Frigates") diff --git a/eos/effects/elitebonusgunshipthermalmissiledamage1.py b/eos/effects/elitebonusgunshipthermalmissiledamage1.py deleted file mode 100644 index 04ee9c25d..000000000 --- a/eos/effects/elitebonusgunshipthermalmissiledamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusGunshipThermalMissileDamage1 -# -# Used by: -# Ship: Jaguar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", - src.getModifiedItemAttr("eliteBonusGunship1"), skill="Assault Frigates") diff --git a/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py b/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py deleted file mode 100644 index 8ff8a12c9..000000000 --- a/eos/effects/elitebonusheavygunshipassaultmissileflighttime1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipAssaultMissileFlightTime1 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py b/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py deleted file mode 100644 index 27b7cefba..000000000 --- a/eos/effects/elitebonusheavygunshipassaultmissilelaunhcerrof2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipAssaultMissileLaunhcerRof2 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipdronecontrolrange1.py b/eos/effects/elitebonusheavygunshipdronecontrolrange1.py deleted file mode 100644 index 8c2a95017..000000000 --- a/eos/effects/elitebonusheavygunshipdronecontrolrange1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusHeavyGunshipDroneControlRange1 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.extraAttributes.increase("droneControlRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py b/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py deleted file mode 100644 index e3aa5470f..000000000 --- a/eos/effects/elitebonusheavygunshipheavyandheavyassaultandassaultmissilelauncherrof.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusHeavyGunshipHeavyAndHeavyAssaultAndAssaultMissileLauncherROF -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - groups = ("Missile Launcher Rapid Light", "Missile Launcher Heavy Assault", "Missile Launcher Heavy") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py b/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py deleted file mode 100644 index c3de080b1..000000000 --- a/eos/effects/elitebonusheavygunshipheavyassaultmissilelaunhcerrof2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipHeavyAssaultMissileLaunhcerRof2 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py b/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py deleted file mode 100644 index 3e2799483..000000000 --- a/eos/effects/elitebonusheavygunshipheavymissileflighttime1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipHeavyMissileFlightTime1 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py b/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py deleted file mode 100644 index 178f96aa9..000000000 --- a/eos/effects/elitebonusheavygunshipheavymissilelaunhcerrof2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipHeavyMissileLaunhcerRof2 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiphybriddmg2.py b/eos/effects/elitebonusheavygunshiphybriddmg2.py deleted file mode 100644 index c2cfc53cb..000000000 --- a/eos/effects/elitebonusheavygunshiphybriddmg2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusHeavyGunshipHybridDmg2 -# -# Used by: -# Ship: Deimos -# Ship: Eagle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiphybridfalloff1.py b/eos/effects/elitebonusheavygunshiphybridfalloff1.py deleted file mode 100644 index 11e858e78..000000000 --- a/eos/effects/elitebonusheavygunshiphybridfalloff1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipHybridFallOff1 -# -# Used by: -# Ship: Deimos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiphybridoptimal1.py b/eos/effects/elitebonusheavygunshiphybridoptimal1.py deleted file mode 100644 index 1c697dcd9..000000000 --- a/eos/effects/elitebonusheavygunshiphybridoptimal1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipHybridOptimal1 -# -# Used by: -# Ship: Eagle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiplaserdmg2.py b/eos/effects/elitebonusheavygunshiplaserdmg2.py deleted file mode 100644 index fb52f881d..000000000 --- a/eos/effects/elitebonusheavygunshiplaserdmg2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipLaserDmg2 -# -# Used by: -# Ship: Zealot -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiplaseroptimal1.py b/eos/effects/elitebonusheavygunshiplaseroptimal1.py deleted file mode 100644 index 8b292f824..000000000 --- a/eos/effects/elitebonusheavygunshiplaseroptimal1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipLaserOptimal1 -# -# Used by: -# Ship: Zealot -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py b/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py deleted file mode 100644 index c4244df02..000000000 --- a/eos/effects/elitebonusheavygunshiplightmissileflighttime1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipLightMissileFlightTime1 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosionDelay", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectiledmg2.py b/eos/effects/elitebonusheavygunshipprojectiledmg2.py deleted file mode 100644 index 92a9f9049..000000000 --- a/eos/effects/elitebonusheavygunshipprojectiledmg2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipProjectileDmg2 -# -# Used by: -# Ship: Vagabond -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectilefalloff1.py b/eos/effects/elitebonusheavygunshipprojectilefalloff1.py deleted file mode 100644 index 310bc6bb1..000000000 --- a/eos/effects/elitebonusheavygunshipprojectilefalloff1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipProjectileFallOff1 -# -# Used by: -# Ship: Vagabond -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectileoptimal1.py b/eos/effects/elitebonusheavygunshipprojectileoptimal1.py deleted file mode 100644 index 4d9a93161..000000000 --- a/eos/effects/elitebonusheavygunshipprojectileoptimal1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipProjectileOptimal1 -# -# Used by: -# Ship: Muninn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavygunshipprojectiletracking2.py b/eos/effects/elitebonusheavygunshipprojectiletracking2.py deleted file mode 100644 index a4f3e915b..000000000 --- a/eos/effects/elitebonusheavygunshipprojectiletracking2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyGunshipProjectileTracking2 -# -# Used by: -# Ship: Muninn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py b/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py deleted file mode 100644 index ef0e91456..000000000 --- a/eos/effects/elitebonusheavyinterdictorheavyassaultmissilevelocitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorHeavyAssaultMissileVelocityBonus -# -# Used by: -# Ship: Onyx -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py b/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py deleted file mode 100644 index 6f5239340..000000000 --- a/eos/effects/elitebonusheavyinterdictorheavymissilevelocitybonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorHeavyMissileVelocityBonus1 -# -# Used by: -# Ship: Onyx -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py b/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py deleted file mode 100644 index aee02924c..000000000 --- a/eos/effects/elitebonusheavyinterdictorlightmissilevelocitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorLightMissileVelocityBonus -# -# Used by: -# Ship: Onyx -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py b/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py deleted file mode 100644 index a257bc062..000000000 --- a/eos/effects/elitebonusheavyinterdictorshybridoptimal1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorsHybridOptimal1 -# -# Used by: -# Ship: Phobos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorsmetoptimal.py b/eos/effects/elitebonusheavyinterdictorsmetoptimal.py deleted file mode 100644 index f671da4c6..000000000 --- a/eos/effects/elitebonusheavyinterdictorsmetoptimal.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorsMETOptimal -# -# Used by: -# Ship: Devoter -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py b/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py deleted file mode 100644 index b5d232374..000000000 --- a/eos/effects/elitebonusheavyinterdictorsprojectilefalloff1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorsProjectileFalloff1 -# -# Used by: -# Ship: Broadsword -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors1"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py b/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py deleted file mode 100644 index 20a47e364..000000000 --- a/eos/effects/elitebonusheavyinterdictorswarpdisruptfieldgeneratorwarpscramblerange2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusHeavyInterdictorsWarpDisruptFieldGeneratorWarpScrambleRange2 -# -# Used by: -# Ships from group: Heavy Interdiction Cruiser (5 of 5) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Disrupt Field Generator", - "warpScrambleRange", ship.getModifiedItemAttr("eliteBonusHeavyInterdictors2"), - skill="Heavy Interdiction Cruisers") diff --git a/eos/effects/elitebonusinterdictorsarmorresist1.py b/eos/effects/elitebonusinterdictorsarmorresist1.py deleted file mode 100644 index 7a1492fc8..000000000 --- a/eos/effects/elitebonusinterdictorsarmorresist1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusInterdictorsArmorResist1 -# -# Used by: -# Ship: Heretic -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("Em", "Thermal", "Explosive", "Kinetic"): - fit.ship.boostItemAttr("armor%sDamageResonance" % damageType, - ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py b/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py deleted file mode 100644 index 310c19504..000000000 --- a/eos/effects/elitebonusinterdictorsmissilekineticdamage1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusInterdictorsMissileKineticDamage1 -# -# Used by: -# Ship: Flycatcher -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Light Missiles") or mod.charge.requiresSkill("Rockets"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsmwdsigradius2.py b/eos/effects/elitebonusinterdictorsmwdsigradius2.py deleted file mode 100644 index 5107837b5..000000000 --- a/eos/effects/elitebonusinterdictorsmwdsigradius2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusInterdictorsMWDSigRadius2 -# -# Used by: -# Ships from group: Interdictor (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusInterdictors2"), - skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsprojectilefalloff1.py b/eos/effects/elitebonusinterdictorsprojectilefalloff1.py deleted file mode 100644 index 2b7450e2b..000000000 --- a/eos/effects/elitebonusinterdictorsprojectilefalloff1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusInterdictorsProjectileFalloff1 -# -# Used by: -# Ship: Sabre -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusinterdictorsshtrof1.py b/eos/effects/elitebonusinterdictorsshtrof1.py deleted file mode 100644 index a01812c19..000000000 --- a/eos/effects/elitebonusinterdictorsshtrof1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusInterdictorsSHTRoF1 -# -# Used by: -# Ship: Eris -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "speed", ship.getModifiedItemAttr("eliteBonusInterdictors1"), skill="Interdictors") diff --git a/eos/effects/elitebonusjumpfreighterarmorhp1.py b/eos/effects/elitebonusjumpfreighterarmorhp1.py deleted file mode 100644 index ecfe3e25a..000000000 --- a/eos/effects/elitebonusjumpfreighterarmorhp1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusJumpFreighterArmorHP1 -# -# Used by: -# Ship: Anshar -# Ship: Ark -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), skill="Jump Freighters") diff --git a/eos/effects/elitebonusjumpfreighterhullhp1.py b/eos/effects/elitebonusjumpfreighterhullhp1.py deleted file mode 100644 index df631889f..000000000 --- a/eos/effects/elitebonusjumpfreighterhullhp1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusJumpFreighterHullHP1 -# -# Used by: -# Ships from group: Jump Freighter (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("hp", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), skill="Jump Freighters") diff --git a/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py b/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py deleted file mode 100644 index 811dc7770..000000000 --- a/eos/effects/elitebonusjumpfreighterjumpdriveconsumptionamount2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusJumpFreighterJumpDriveConsumptionAmount2 -# -# Used by: -# Ships from group: Jump Freighter (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("jumpDriveConsumptionAmount", ship.getModifiedItemAttr("eliteBonusJumpFreighter2"), - skill="Jump Freighters") diff --git a/eos/effects/elitebonusjumpfreightershieldhp1.py b/eos/effects/elitebonusjumpfreightershieldhp1.py deleted file mode 100644 index 7fa846975..000000000 --- a/eos/effects/elitebonusjumpfreightershieldhp1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusJumpFreighterShieldHP1 -# -# Used by: -# Ship: Nomad -# Ship: Rhea -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("eliteBonusJumpFreighter1"), - skill="Jump Freighters") diff --git a/eos/effects/elitebonuslogifrigarmorhp2.py b/eos/effects/elitebonuslogifrigarmorhp2.py deleted file mode 100644 index 99453cb57..000000000 --- a/eos/effects/elitebonuslogifrigarmorhp2.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusLogiFrigArmorHP2 -# -# Used by: -# Ship: Deacon -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorHP", src.getModifiedItemAttr("eliteBonusLogiFrig2"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py b/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py deleted file mode 100644 index ceb9a3d09..000000000 --- a/eos/effects/elitebonuslogifrigarmorrepspeedcap1.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteBonusLogiFrigArmorRepSpeedCap1 -# -# Used by: -# Ship: Deacon -# Ship: Thalia -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", - src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigshieldhp2.py b/eos/effects/elitebonuslogifrigshieldhp2.py deleted file mode 100644 index b99cde37f..000000000 --- a/eos/effects/elitebonuslogifrigshieldhp2.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusLogiFrigShieldHP2 -# -# Used by: -# Ship: Kirin -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldCapacity", src.getModifiedItemAttr("eliteBonusLogiFrig2"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py b/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py deleted file mode 100644 index 8f2e8b53d..000000000 --- a/eos/effects/elitebonuslogifrigshieldrepspeedcap1.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteBonusLogiFrigShieldRepSpeedCap1 -# -# Used by: -# Ship: Kirin -# Ship: Scalpel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "duration", - src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", - src.getModifiedItemAttr("eliteBonusLogiFrig1"), skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogifrigsignature2.py b/eos/effects/elitebonuslogifrigsignature2.py deleted file mode 100644 index 3f4de996a..000000000 --- a/eos/effects/elitebonuslogifrigsignature2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogiFrigSignature2 -# -# Used by: -# Ship: Scalpel -# Ship: Thalia -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("signatureRadius", src.getModifiedItemAttr("eliteBonusLogiFrig2"), - skill="Logistics Frigates") diff --git a/eos/effects/elitebonuslogisticenergytransfercapneed1.py b/eos/effects/elitebonuslogisticenergytransfercapneed1.py deleted file mode 100644 index 14d95aae6..000000000 --- a/eos/effects/elitebonuslogisticenergytransfercapneed1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticEnergyTransferCapNeed1 -# -# Used by: -# Ship: Guardian -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics1"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticenergytransfercapneed2.py b/eos/effects/elitebonuslogisticenergytransfercapneed2.py deleted file mode 100644 index a18cb0a34..000000000 --- a/eos/effects/elitebonuslogisticenergytransfercapneed2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusLogisticEnergyTransferCapNeed2 -# -# Used by: -# Ship: Basilisk -# Ship: Etana -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusLogistics2"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py b/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py deleted file mode 100644 index 2c954a502..000000000 --- a/eos/effects/elitebonuslogisticremotearmorrepaircapneed1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusLogisticRemoteArmorRepairCapNeed1 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py b/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py deleted file mode 100644 index bb031021b..000000000 --- a/eos/effects/elitebonuslogisticremotearmorrepaircapneed2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticRemoteArmorRepairCapNeed2 -# -# Used by: -# Ship: Guardian -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticremotearmorrepairduration3.py b/eos/effects/elitebonuslogisticremotearmorrepairduration3.py deleted file mode 100644 index 5c9b24c1c..000000000 --- a/eos/effects/elitebonuslogisticremotearmorrepairduration3.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusLogisticRemoteArmorRepairDuration3 -# -# Used by: -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "duration", - src.getModifiedItemAttr("eliteBonusLogistics3"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticremotearmorrepairoptimalfalloff1.py b/eos/effects/elitebonuslogisticremotearmorrepairoptimalfalloff1.py deleted file mode 100644 index cacbd4478..000000000 --- a/eos/effects/elitebonuslogisticremotearmorrepairoptimalfalloff1.py +++ /dev/null @@ -1,16 +0,0 @@ -# eliteBonusLogisticRemoteArmorRepairOptimalFalloff1 -# -# Used by: -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusLogistics1"), - skill="Logistics Cruisers") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "maxRange", - src.getModifiedItemAttr("eliteBonusLogistics1"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticshieldtransfercapneed1.py b/eos/effects/elitebonuslogisticshieldtransfercapneed1.py deleted file mode 100644 index 3060ef3be..000000000 --- a/eos/effects/elitebonuslogisticshieldtransfercapneed1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticShieldTransferCapNeed1 -# -# Used by: -# Ship: Basilisk -# Ship: Etana -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", - src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticshieldtransfercapneed2.py b/eos/effects/elitebonuslogisticshieldtransfercapneed2.py deleted file mode 100644 index 81b94ee96..000000000 --- a/eos/effects/elitebonuslogisticshieldtransfercapneed2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusLogisticShieldTransferCapNeed2 -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", - src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py b/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py deleted file mode 100644 index b1c5b908d..000000000 --- a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticsTrackingLinkFalloffBonus1 -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py b/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py deleted file mode 100644 index e13cef64b..000000000 --- a/eos/effects/elitebonuslogisticstrackinglinkfalloffbonus2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticsTrackingLinkFalloffBonus2 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py b/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py deleted file mode 100644 index 87225755e..000000000 --- a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticsTrackingLinkMaxRangeBonus1 -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "maxRangeBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py b/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py deleted file mode 100644 index f95e79062..000000000 --- a/eos/effects/elitebonuslogisticstrackinglinkmaxrangebonus2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticsTrackingLinkMaxRangeBonus2 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "maxRangeBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py b/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py deleted file mode 100644 index dcb3c5d3a..000000000 --- a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticsTrackingLinkTrackingSpeedBonus1 -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "trackingSpeedBonus", ship.getModifiedItemAttr("eliteBonusLogistics1"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py b/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py deleted file mode 100644 index b79d6faf0..000000000 --- a/eos/effects/elitebonuslogisticstrackinglinktrackingspeedbonus2.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusLogisticsTrackingLinkTrackingSpeedBonus2 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "trackingSpeedBonus", ship.getModifiedItemAttr("eliteBonusLogistics2"), - skill="Logistics Cruisers") diff --git a/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py b/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py deleted file mode 100644 index 0541914fc..000000000 --- a/eos/effects/elitebonusmarauderscruiseandtorpedodamagerole1.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteBonusMaraudersCruiseAndTorpedoDamageRole1 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("em", "explosive", "kinetic", "thermal") - for damageType in damageTypes: - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py b/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py deleted file mode 100644 index 81a99b02c..000000000 --- a/eos/effects/elitebonusmaraudersheavymissiledamageemrole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusMaraudersHeavyMissileDamageEMRole1 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "emDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py b/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py deleted file mode 100644 index 3bffe8e41..000000000 --- a/eos/effects/elitebonusmaraudersheavymissiledamageexprole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusMaraudersHeavyMissileDamageExpRole1 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py b/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py deleted file mode 100644 index 68646cd8d..000000000 --- a/eos/effects/elitebonusmaraudersheavymissiledamagekinrole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusMaraudersHeavyMissileDamageKinRole1 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py b/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py deleted file mode 100644 index 70abcb387..000000000 --- a/eos/effects/elitebonusmaraudersheavymissiledamagethermrole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusMaraudersHeavyMissileDamageThermRole1 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "thermalDamage", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusmaraudershieldbonus2a.py b/eos/effects/elitebonusmaraudershieldbonus2a.py deleted file mode 100644 index 4856571cf..000000000 --- a/eos/effects/elitebonusmaraudershieldbonus2a.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusMarauderShieldBonus2a -# -# Used by: -# Ship: Golem -# Ship: Vargur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("eliteBonusViolators2"), skill="Marauders") diff --git a/eos/effects/elitebonusreconscanprobestrength2.py b/eos/effects/elitebonusreconscanprobestrength2.py deleted file mode 100644 index 55db46631..000000000 --- a/eos/effects/elitebonusreconscanprobestrength2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusReconScanProbeStrength2 -# -# Used by: -# Ship: Tiamat -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), "baseSensorStrength", - src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/elitebonusreconship3pctdamagepercycle.py b/eos/effects/elitebonusreconship3pctdamagepercycle.py deleted file mode 100644 index 5aabfdcb7..000000000 --- a/eos/effects/elitebonusreconship3pctdamagepercycle.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusReconShip3PCTdamagePerCycle -# -# Used by: -# Ship: Tiamat -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), "damageMultiplierBonusPerCycle", - src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/elitebonusreconwarpvelocity3.py b/eos/effects/elitebonusreconwarpvelocity3.py deleted file mode 100644 index 909c577a1..000000000 --- a/eos/effects/elitebonusreconwarpvelocity3.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteBonusReconWarpVelocity3 -# -# Used by: -# Ship: Enforcer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/elitebonusvampiredrainamount2.py b/eos/effects/elitebonusvampiredrainamount2.py deleted file mode 100644 index 8fb5bac49..000000000 --- a/eos/effects/elitebonusvampiredrainamount2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusVampireDrainAmount2 -# -# Used by: -# Ship: Curse -# Ship: Pilgrim -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("eliteBonusReconShip2"), - skill="Recon Ships") diff --git a/eos/effects/elitebonusviolatorsewtargetpainting1.py b/eos/effects/elitebonusviolatorsewtargetpainting1.py deleted file mode 100644 index cf16508e5..000000000 --- a/eos/effects/elitebonusviolatorsewtargetpainting1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusViolatorsEwTargetPainting1 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusViolators1"), - skill="Marauders") diff --git a/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py b/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py deleted file mode 100644 index fd2aad0bb..000000000 --- a/eos/effects/elitebonusviolatorslargeenergyturretdamage1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteBonusViolatorsLargeEnergyTurretDamage1 -# -# Used by: -# Ship: Paladin -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolators1"), - skill="Marauders") diff --git a/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py b/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py deleted file mode 100644 index 9b25bb56f..000000000 --- a/eos/effects/elitebonusviolatorslargeenergyturretdamagerole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsLargeEnergyTurretDamageRole1 -# -# Used by: -# Ship: Paladin -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py b/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py deleted file mode 100644 index 932faef41..000000000 --- a/eos/effects/elitebonusviolatorslargehybridturretdamagerole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsLargeHybridTurretDamageRole1 -# -# Used by: -# Ship: Kronos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusviolatorslargehybridturrettracking1.py b/eos/effects/elitebonusviolatorslargehybridturrettracking1.py deleted file mode 100644 index da791d457..000000000 --- a/eos/effects/elitebonusviolatorslargehybridturrettracking1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsLargeHybridTurretTracking1 -# -# Used by: -# Ship: Kronos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusViolators1"), skill="Marauders") diff --git a/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py b/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py deleted file mode 100644 index b0166442e..000000000 --- a/eos/effects/elitebonusviolatorslargeprojectileturretdamagerole1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsLargeProjectileTurretDamageRole1 -# -# Used by: -# Ship: Vargur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusViolatorsRole1")) diff --git a/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py b/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py deleted file mode 100644 index 708c6098c..000000000 --- a/eos/effects/elitebonusviolatorslargeprojectileturrettracking1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsLargeProjectileTurretTracking1 -# -# Used by: -# Ship: Vargur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusViolators1"), skill="Marauders") diff --git a/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py b/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py deleted file mode 100644 index 648b65203..000000000 --- a/eos/effects/elitebonusviolatorsrepairsystemsarmordamageamount2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteBonusViolatorsRepairSystemsArmorDamageAmount2 -# -# Used by: -# Ship: Kronos -# Ship: Paladin -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("eliteBonusViolators2"), - skill="Marauders") diff --git a/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py b/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py deleted file mode 100644 index e6e49cbd3..000000000 --- a/eos/effects/elitebonusviolatorstractorbeammaxrangerole2.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsTractorBeamMaxRangeRole2 -# -# Used by: -# Ships from group: Marauder (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", ship.getModifiedItemAttr("eliteBonusViolatorsRole2")) diff --git a/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py b/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py deleted file mode 100644 index 747b01bb9..000000000 --- a/eos/effects/elitebonusviolatorstractorbeammaxtractorvelocityrole3.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteBonusViolatorsTractorBeamMaxTractorVelocityRole3 -# -# Used by: -# Ships from group: Marauder (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", ship.getModifiedItemAttr("eliteBonusViolatorsRole3")) diff --git a/eos/effects/elitecovertopsbonusarmorrepamount4.py b/eos/effects/elitecovertopsbonusarmorrepamount4.py deleted file mode 100644 index 00a63046b..000000000 --- a/eos/effects/elitecovertopsbonusarmorrepamount4.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteCovertOpsBonusArmorRepAmount4 -# -# Used by: -# Ship: Virtuoso -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", - src.getModifiedItemAttr("eliteBonusCovertOps4"), skill="Covert Ops") diff --git a/eos/effects/eliteindustrialabheatbonus.py b/eos/effects/eliteindustrialabheatbonus.py deleted file mode 100644 index 2bfd6fe21..000000000 --- a/eos/effects/eliteindustrialabheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialABHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "overloadSpeedFactorBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialarmorhardenerheatbonus.py b/eos/effects/eliteindustrialarmorhardenerheatbonus.py deleted file mode 100644 index c0e4dec0c..000000000 --- a/eos/effects/eliteindustrialarmorhardenerheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialArmorHardenerHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), - "overloadHardeningBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialarmorrepairheatbonus.py b/eos/effects/eliteindustrialarmorrepairheatbonus.py deleted file mode 100644 index 5bb6ac8c6..000000000 --- a/eos/effects/eliteindustrialarmorrepairheatbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteIndustrialArmorRepairHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "overloadArmorDamageAmount", ship.getModifiedItemAttr("roleBonusOverheatDST")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "overloadSelfDurationBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialarmorresists2.py b/eos/effects/eliteindustrialarmorresists2.py deleted file mode 100644 index fc4298590..000000000 --- a/eos/effects/eliteindustrialarmorresists2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteIndustrialArmorResists2 -# -# Used by: -# Ship: Impel -# Ship: Occator -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "thermal", "explosive", "kinetic"): - fit.ship.boostItemAttr("armor{}DamageResonance".format(damageType.capitalize()), - ship.getModifiedItemAttr("eliteBonusIndustrial2"), skill="Transport Ships") diff --git a/eos/effects/eliteindustrialfleetcapacity1.py b/eos/effects/eliteindustrialfleetcapacity1.py deleted file mode 100644 index 1cc16aab2..000000000 --- a/eos/effects/eliteindustrialfleetcapacity1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialFleetCapacity1 -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("fleetHangarCapacity", ship.getModifiedItemAttr("eliteBonusIndustrial1"), - skill="Transport Ships") diff --git a/eos/effects/eliteindustrialmwdheatbonus.py b/eos/effects/eliteindustrialmwdheatbonus.py deleted file mode 100644 index 995b34fd8..000000000 --- a/eos/effects/eliteindustrialmwdheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialMWDHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "overloadSpeedFactorBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py b/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py deleted file mode 100644 index 7a7b3de70..000000000 --- a/eos/effects/eliteindustrialreactivearmorhardenerheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialReactiveArmorHardenerHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), - "overloadSelfDurationBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialshieldboosterheatbonus.py b/eos/effects/eliteindustrialshieldboosterheatbonus.py deleted file mode 100644 index 73766a8a8..000000000 --- a/eos/effects/eliteindustrialshieldboosterheatbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteIndustrialShieldBoosterHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "overloadShieldBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "overloadSelfDurationBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialshieldhardenerheatbonus.py b/eos/effects/eliteindustrialshieldhardenerheatbonus.py deleted file mode 100644 index a90f769ac..000000000 --- a/eos/effects/eliteindustrialshieldhardenerheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialShieldHardenerHeatBonus -# -# Used by: -# Ships from group: Deep Space Transport (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Tactical Shield Manipulation"), - "overloadHardeningBonus", ship.getModifiedItemAttr("roleBonusOverheatDST")) diff --git a/eos/effects/eliteindustrialshieldresists2.py b/eos/effects/eliteindustrialshieldresists2.py deleted file mode 100644 index c21754443..000000000 --- a/eos/effects/eliteindustrialshieldresists2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteIndustrialShieldResists2 -# -# Used by: -# Ship: Bustard -# Ship: Mastodon -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "thermal", "explosive", "kinetic"): - fit.ship.boostItemAttr("shield{}DamageResonance".format(damageType.capitalize()), - ship.getModifiedItemAttr("eliteBonusIndustrial2"), skill="Transport Ships") diff --git a/eos/effects/eliteindustrialwarpspeedbonus1.py b/eos/effects/eliteindustrialwarpspeedbonus1.py deleted file mode 100644 index 826ff22ec..000000000 --- a/eos/effects/eliteindustrialwarpspeedbonus1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteIndustrialWarpSpeedBonus1 -# -# Used by: -# Ships from group: Blockade Runner (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", ship.getModifiedItemAttr("eliteBonusIndustrial1"), - skill="Transport Ships") diff --git a/eos/effects/elitereconbonusarmorrepamount3.py b/eos/effects/elitereconbonusarmorrepamount3.py deleted file mode 100644 index 658f94883..000000000 --- a/eos/effects/elitereconbonusarmorrepamount3.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteReconBonusArmorRepAmount3 -# -# Used by: -# Ship: Victor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", - src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/elitereconbonusenergyneutamount2.py b/eos/effects/elitereconbonusenergyneutamount2.py deleted file mode 100644 index a7051eb62..000000000 --- a/eos/effects/elitereconbonusenergyneutamount2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteReconBonusEnergyNeutAmount2 -# -# Used by: -# Ship: Curse -# Ship: Pilgrim -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("eliteBonusReconShip2"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusgravimetricstrength2.py b/eos/effects/elitereconbonusgravimetricstrength2.py deleted file mode 100644 index a023201da..000000000 --- a/eos/effects/elitereconbonusgravimetricstrength2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteReconBonusGravimetricStrength2 -# -# Used by: -# Ship: Chameleon -# Ship: Falcon -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanGravimetricStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusheavyassaultmissilevelocity.py b/eos/effects/elitereconbonusheavyassaultmissilevelocity.py deleted file mode 100644 index fc223a167..000000000 --- a/eos/effects/elitereconbonusheavyassaultmissilevelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteReconBonusHeavyAssaultMissileVelocity -# -# Used by: -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusReconShip1"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusheavymissilevelocity.py b/eos/effects/elitereconbonusheavymissilevelocity.py deleted file mode 100644 index 8f73c136a..000000000 --- a/eos/effects/elitereconbonusheavymissilevelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteReconBonusHeavyMissileVelocity -# -# Used by: -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusReconShip1"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusladarstrength2.py b/eos/effects/elitereconbonusladarstrength2.py deleted file mode 100644 index 3bab26dfa..000000000 --- a/eos/effects/elitereconbonusladarstrength2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteReconBonusLadarStrength2 -# -# Used by: -# Ship: Chameleon -# Ship: Falcon -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanLadarStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmagnetometricstrength2.py b/eos/effects/elitereconbonusmagnetometricstrength2.py deleted file mode 100644 index 89baa4a80..000000000 --- a/eos/effects/elitereconbonusmagnetometricstrength2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteReconBonusMagnetometricStrength2 -# -# Used by: -# Ship: Chameleon -# Ship: Falcon -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanMagnetometricStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmhtdamage1.py b/eos/effects/elitereconbonusmhtdamage1.py deleted file mode 100644 index 3bb0f6833..000000000 --- a/eos/effects/elitereconbonusmhtdamage1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteReconBonusMHTDamage1 -# -# Used by: -# Ship: Victor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "damageMultiplier", - src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmhtoptimalrange1.py b/eos/effects/elitereconbonusmhtoptimalrange1.py deleted file mode 100644 index 921c8d7d2..000000000 --- a/eos/effects/elitereconbonusmhtoptimalrange1.py +++ /dev/null @@ -1,10 +0,0 @@ -# eliteReconBonusMHTOptimalRange1 -# -# Used by: -# Ship: Lachesis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/elitereconbonusmptdamage1.py b/eos/effects/elitereconbonusmptdamage1.py deleted file mode 100644 index 7d66fc0c5..000000000 --- a/eos/effects/elitereconbonusmptdamage1.py +++ /dev/null @@ -1,11 +0,0 @@ -# eliteReconBonusMPTdamage1 -# -# Used by: -# Ship: Huginn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusReconShip1"), - skill="Recon Ships") diff --git a/eos/effects/elitereconbonusradarstrength2.py b/eos/effects/elitereconbonusradarstrength2.py deleted file mode 100644 index fec2c9490..000000000 --- a/eos/effects/elitereconbonusradarstrength2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteReconBonusRadarStrength2 -# -# Used by: -# Ship: Chameleon -# Ship: Falcon -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scanRadarStrengthBonus", ship.getModifiedItemAttr("eliteBonusReconShip2"), - skill="Recon Ships") diff --git a/eos/effects/elitereconscramblerrangebonus2.py b/eos/effects/elitereconscramblerrangebonus2.py deleted file mode 100644 index d308a56ba..000000000 --- a/eos/effects/elitereconscramblerrangebonus2.py +++ /dev/null @@ -1,12 +0,0 @@ -# eliteReconScramblerRangeBonus2 -# -# Used by: -# Ship: Arazu -# Ship: Enforcer -# Ship: Lachesis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/elitereconstasiswebbonus1.py b/eos/effects/elitereconstasiswebbonus1.py deleted file mode 100644 index abbf4f6c6..000000000 --- a/eos/effects/elitereconstasiswebbonus1.py +++ /dev/null @@ -1,9 +0,0 @@ -# eliteReconStasisWebBonus1 -# -# Used by: -# Ship: Enforcer -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/elitereconstasiswebbonus2.py b/eos/effects/elitereconstasiswebbonus2.py deleted file mode 100644 index 071739847..000000000 --- a/eos/effects/elitereconstasiswebbonus2.py +++ /dev/null @@ -1,13 +0,0 @@ -# eliteReconStasisWebBonus2 -# -# Used by: -# Ship: Huginn -# Ship: Moracha -# Ship: Rapier -# Ship: Victor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", ship.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py deleted file mode 100644 index 26e453172..000000000 --- a/eos/effects/emarmorcompensationhardeningbonusgrouparmorcoating.py +++ /dev/null @@ -1,10 +0,0 @@ -# emArmorCompensationHardeningBonusGroupArmorCoating -# -# Used by: -# Skill: EM Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", - "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py b/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py deleted file mode 100644 index 837cf6912..000000000 --- a/eos/effects/emarmorcompensationhardeningbonusgroupenergized.py +++ /dev/null @@ -1,10 +0,0 @@ -# emArmorCompensationHardeningBonusGroupEnergized -# -# Used by: -# Skill: EM Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/emergencyhullenergizer.py b/eos/effects/emergencyhullenergizer.py deleted file mode 100644 index c2de4f4f5..000000000 --- a/eos/effects/emergencyhullenergizer.py +++ /dev/null @@ -1,13 +0,0 @@ -# emergencyHullEnergizer -# -# Used by: -# Variations of module: Capital Emergency Hull Energizer I (5 of 5) -type = "active" -runtime = "late" - - -def handler(fit, src, context): - for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): - fit.ship.multiplyItemAttr('{}DamageResonance'.format(dmgType), - src.getModifiedItemAttr("hull{}DamageResonance".format(dmgType.title())), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/empwave.py b/eos/effects/empwave.py deleted file mode 100644 index 898cd270f..000000000 --- a/eos/effects/empwave.py +++ /dev/null @@ -1,9 +0,0 @@ -# empWave -# -# Used by: -# Modules from group: Smart Bomb (118 of 118) -type = "active" - - -def handler(fit, module, context): - pass diff --git a/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py deleted file mode 100644 index 189738822..000000000 --- a/eos/effects/emshieldcompensationhardeningbonusgroupshieldamp.py +++ /dev/null @@ -1,10 +0,0 @@ -# emShieldCompensationHardeningBonusGroupShieldAmp -# -# Used by: -# Skill: EM Shield Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "emDamageResistanceBonus", skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py b/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py deleted file mode 100644 index 46d6f847e..000000000 --- a/eos/effects/energygridupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergygridupgrades.py +++ /dev/null @@ -1,13 +0,0 @@ -# energyGridUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringEnergyGridUpgrades -# -# Used by: -# Implants named like: Inherent Implants 'Squire' Energy Grid Upgrades EU (6 of 6) -# Modules named like: Powergrid Subroutine Maximizer (8 of 8) -# Skill: Energy Grid Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Grid Upgrades"), - "cpu", container.getModifiedItemAttr("cpuNeedBonus") * level) diff --git a/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py b/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py deleted file mode 100644 index da1896d18..000000000 --- a/eos/effects/energymanagementcapacitorbonuspostpercentcapacitylocationshipgroupcapacitorcapacitybonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# energyManagementCapacitorBonusPostPercentCapacityLocationShipGroupCapacitorCapacityBonus -# -# Used by: -# Implants named like: Inherent Implants 'Squire' Capacitor Management EM (6 of 6) -# Implants named like: Mindflood Booster (4 of 4) -# Modules named like: Semiconductor Memory Cell (8 of 8) -# Implant: Antipharmakon Aeolis -# Implant: Genolution Core Augmentation CA-1 -# Skill: Capacitor Management -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("capacitorCapacity", container.getModifiedItemAttr("capacitorCapacityBonus") * level) diff --git a/eos/effects/energyneutralizerfalloff.py b/eos/effects/energyneutralizerfalloff.py deleted file mode 100644 index 2ee279d44..000000000 --- a/eos/effects/energyneutralizerfalloff.py +++ /dev/null @@ -1,21 +0,0 @@ -# energyNeutralizerFalloff -# -# Used by: -# Modules from group: Energy Neutralizer (54 of 54) -from eos.const import FittingModuleState -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "active", "projected" - - -def handler(fit, src, context, **kwargs): - if "projected" in context and ((hasattr(src, "state") and src.state >= FittingModuleState.ACTIVE) or - hasattr(src, "amountActive")): - amount = src.getModifiedItemAttr("energyNeutralizerAmount") - - if 'effect' in kwargs: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - time = src.getModifiedItemAttr("duration") - - fit.addDrain(src, time, amount, 0) diff --git a/eos/effects/energynosferatufalloff.py b/eos/effects/energynosferatufalloff.py deleted file mode 100644 index 2d6414e61..000000000 --- a/eos/effects/energynosferatufalloff.py +++ /dev/null @@ -1,21 +0,0 @@ -# energyNosferatuFalloff -# -# Used by: -# Modules from group: Energy Nosferatu (54 of 54) -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "active", "projected" -runTime = "late" - - -def handler(fit, src, context, **kwargs): - amount = src.getModifiedItemAttr("powerTransferAmount") - time = src.getModifiedItemAttr("duration") - - if 'effect' in kwargs and "projected" in context: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - if "projected" in context: - fit.addDrain(src, time, amount, 0) - elif "module" in context: - src.itemModifiedAttributes.force("capacitorNeed", -amount) diff --git a/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py b/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py deleted file mode 100644 index 6db95e742..000000000 --- a/eos/effects/energypulseweaponsdurationbonuspostpercentdurationlocationshipmodulesrequiringenergypulseweapons.py +++ /dev/null @@ -1,12 +0,0 @@ -# energyPulseWeaponsDurationBonusPostPercentDurationLocationShipModulesRequiringEnergyPulseWeapons -# -# Used by: -# Implants named like: Inherent Implants 'Squire' Energy Pulse Weapons EP (6 of 6) -# Skill: Energy Pulse Weapons -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Pulse Weapons"), - "duration", container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py b/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py deleted file mode 100644 index 991640a10..000000000 --- a/eos/effects/energysystemsoperationcaprechargebonuspostpercentrechargeratelocationshipgroupcapacitor.py +++ /dev/null @@ -1,13 +0,0 @@ -# energysystemsoperationCapRechargeBonusPostPercentRechargeRateLocationShipGroupCapacitor -# -# Used by: -# Implants named like: Inherent Implants 'Squire' Capacitor Systems Operation EO (6 of 6) -# Modules named like: Capacitor Control Circuit (8 of 8) -# Implant: Genolution Core Augmentation CA-2 -# Skill: Capacitor Systems Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("rechargeRate", container.getModifiedItemAttr("capRechargeBonus") * level) diff --git a/eos/effects/energytransferarraymaxrangebonus.py b/eos/effects/energytransferarraymaxrangebonus.py deleted file mode 100644 index cc26638ad..000000000 --- a/eos/effects/energytransferarraymaxrangebonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# energyTransferArrayMaxRangeBonus -# -# Used by: -# Ship: Augoror -# Ship: Osprey -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "maxRange", ship.getModifiedItemAttr("maxRangeBonus2")) diff --git a/eos/effects/energytransferarraytransferamountbonus.py b/eos/effects/energytransferarraytransferamountbonus.py deleted file mode 100644 index b863b95ec..000000000 --- a/eos/effects/energytransferarraytransferamountbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# energyTransferArrayTransferAmountBonus -# -# Used by: -# Ship: Augoror -# Ship: Osprey -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "powerTransferAmount", ship.getModifiedItemAttr("energyTransferAmountBonus")) diff --git a/eos/effects/energyweapondamagemultiply.py b/eos/effects/energyweapondamagemultiply.py deleted file mode 100644 index 42dddd186..000000000 --- a/eos/effects/energyweapondamagemultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# energyWeaponDamageMultiply -# -# Used by: -# Modules from group: Heat Sink (19 of 19) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/energyweapondamagemultiplypassive.py b/eos/effects/energyweapondamagemultiplypassive.py deleted file mode 100644 index 5e4cad460..000000000 --- a/eos/effects/energyweapondamagemultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# energyWeaponDamageMultiplyPassive -# -# Used by: -# Modules named like: Energy Collision Accelerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/energyweaponspeedmultiply.py b/eos/effects/energyweaponspeedmultiply.py deleted file mode 100644 index 19dacfb85..000000000 --- a/eos/effects/energyweaponspeedmultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# energyWeaponSpeedMultiply -# -# Used by: -# Modules from group: Heat Sink (19 of 19) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/energyweaponspeedmultiplypassive.py b/eos/effects/energyweaponspeedmultiplypassive.py deleted file mode 100644 index bcee87d6b..000000000 --- a/eos/effects/energyweaponspeedmultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# energyWeaponSpeedMultiplyPassive -# -# Used by: -# Modules named like: Energy Burst Aerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py b/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py deleted file mode 100644 index a6c38728b..000000000 --- a/eos/effects/engineeringpowerengineeringoutputbonuspostpercentpoweroutputlocationshipgrouppowercore.py +++ /dev/null @@ -1,14 +0,0 @@ -# engineeringPowerEngineeringOutputBonusPostPercentPowerOutputLocationShipGroupPowerCore -# -# Used by: -# Implants named like: Inherent Implants 'Squire' Power Grid Management EG (6 of 6) -# Modules named like: Ancillary Current Router (8 of 8) -# Subsystems named like: Core Augmented Reactor (4 of 4) -# Implant: Genolution Core Augmentation CA-1 -# Skill: Power Grid Management -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("powerOutput", container.getModifiedItemAttr("powerEngineeringOutputBonus") * level) diff --git a/eos/effects/entityecmfalloff.py b/eos/effects/entityecmfalloff.py deleted file mode 100644 index 9e382a641..000000000 --- a/eos/effects/entityecmfalloff.py +++ /dev/null @@ -1,18 +0,0 @@ -# entityECMFalloff -# -# Used by: -# Drones named like: EC (3 of 3) -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "projected", "active" - - -def handler(fit, module, context, **kwargs): - if "projected" in context: - # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength - - if 'effect' in kwargs: - strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/entityenergyneutralizerfalloff.py b/eos/effects/entityenergyneutralizerfalloff.py deleted file mode 100644 index ade55d190..000000000 --- a/eos/effects/entityenergyneutralizerfalloff.py +++ /dev/null @@ -1,20 +0,0 @@ -# entityEnergyNeutralizerFalloff -# -# Used by: -# Drones from group: Energy Neutralizer Drone (3 of 3) -from eos.const import FittingModuleState -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "active", "projected" - - -def handler(fit, src, context, **kwargs): - if "projected" in context and ((hasattr(src, "state") and src.state >= FittingModuleState.ACTIVE) or - hasattr(src, "amountActive")): - amount = src.getModifiedItemAttr("energyNeutralizerAmount") - time = src.getModifiedItemAttr("energyNeutralizerDuration") - - if 'effect' in kwargs: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.addDrain(src, time, amount, 0) diff --git a/eos/effects/entosiscpuaddition.py b/eos/effects/entosiscpuaddition.py deleted file mode 100644 index a29e38f85..000000000 --- a/eos/effects/entosiscpuaddition.py +++ /dev/null @@ -1,9 +0,0 @@ -# entosisCPUAddition -# -# Used by: -# Modules from group: Entosis Link (6 of 6) -type = "passive" - - -def handler(fit, module, context): - module.increaseItemAttr("cpu", module.getModifiedItemAttr("entosisCPUAdd")) diff --git a/eos/effects/entosiscpupenalty.py b/eos/effects/entosiscpupenalty.py deleted file mode 100644 index a382ed70a..000000000 --- a/eos/effects/entosiscpupenalty.py +++ /dev/null @@ -1,10 +0,0 @@ -# entosisCPUPenalty -# -# Used by: -# Ships from group: Interceptor (10 of 10) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Infomorph Psychology"), - "entosisCPUAdd", ship.getModifiedItemAttr("entosisCPUPenalty")) diff --git a/eos/effects/entosisdurationmultiply.py b/eos/effects/entosisdurationmultiply.py deleted file mode 100644 index fae2e74ec..000000000 --- a/eos/effects/entosisdurationmultiply.py +++ /dev/null @@ -1,10 +0,0 @@ -# entosisDurationMultiply -# -# Used by: -# Items from market group: Ships > Capital Ships (31 of 40) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Infomorph Psychology"), - "duration", ship.getModifiedItemAttr("entosisDurationMultiplier") or 1) diff --git a/eos/effects/entosislink.py b/eos/effects/entosislink.py deleted file mode 100644 index 11b5faa28..000000000 --- a/eos/effects/entosislink.py +++ /dev/null @@ -1,15 +0,0 @@ -# entosisLink -# -# Used by: -# Modules from group: Entosis Link (6 of 6) -type = "active" - - -def handler(fit, module, context): - fit.ship.forceItemAttr("disallowAssistance", module.getModifiedItemAttr("disallowAssistance")) - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - fit.ship.boostItemAttr( - "scan{}Strength".format(scanType), - module.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)), - stackingPenalties=True - ) diff --git a/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py b/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py deleted file mode 100644 index b2f81c56e..000000000 --- a/eos/effects/evasivemaneuveringagilitybonuspostpercentagilityship.py +++ /dev/null @@ -1,17 +0,0 @@ -# evasiveManeuveringAgilityBonusPostPercentAgilityShip -# -# Used by: -# Modules from group: Rig Anchor (4 of 4) -# Implants named like: Eifyr and Co. 'Rogue' Evasive Maneuvering EM (6 of 6) -# Implants named like: grade Nomad (10 of 12) -# Modules named like: Low Friction Nozzle Joints (8 of 8) -# Implant: Genolution Core Augmentation CA-4 -# Skill: Evasive Maneuvering -# Skill: Spaceship Command -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("agility", container.getModifiedItemAttr("agilityBonus") * level, - stackingPenalties="skill" not in context and "implant" not in context) diff --git a/eos/effects/ewgroupecmburstmaxrangebonus.py b/eos/effects/ewgroupecmburstmaxrangebonus.py deleted file mode 100644 index 11c4f01cb..000000000 --- a/eos/effects/ewgroupecmburstmaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewGroupEcmBurstMaxRangeBonus -# -# Used by: -# Implants named like: grade Centurion (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Projectors", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewgrouprsdmaxrangebonus.py b/eos/effects/ewgrouprsdmaxrangebonus.py deleted file mode 100644 index cd2c3cf5e..000000000 --- a/eos/effects/ewgrouprsdmaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewGroupRsdMaxRangeBonus -# -# Used by: -# Implants named like: grade Centurion (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewgrouptdmaxrangebonus.py b/eos/effects/ewgrouptdmaxrangebonus.py deleted file mode 100644 index 5fcc86c66..000000000 --- a/eos/effects/ewgrouptdmaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewGroupTdMaxRangeBonus -# -# Used by: -# Implants named like: grade Centurion (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewgrouptpmaxrangebonus.py b/eos/effects/ewgrouptpmaxrangebonus.py deleted file mode 100644 index a764367c0..000000000 --- a/eos/effects/ewgrouptpmaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewGroupTpMaxRangeBonus -# -# Used by: -# Implants named like: grade Centurion (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "maxRange", implant.getModifiedItemAttr("rangeSkillBonus")) diff --git a/eos/effects/ewskillecmburstcapneedbonus.py b/eos/effects/ewskillecmburstcapneedbonus.py deleted file mode 100644 index 0e836193a..000000000 --- a/eos/effects/ewskillecmburstcapneedbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillEcmBurstCapNeedBonus -# -# Used by: -# Implants named like: Zainou 'Gypsy' Electronic Warfare EW (6 of 6) -# Modules named like: Signal Disruption Amplifier (8 of 8) -# Skill: Electronic Warfare -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/ewskillecmburstrangebonus.py b/eos/effects/ewskillecmburstrangebonus.py deleted file mode 100644 index 1f257c03c..000000000 --- a/eos/effects/ewskillecmburstrangebonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillEcmBurstRangeBonus -# -# Used by: -# Modules named like: Particle Dispersion Projector (8 of 8) -# Skill: Long Distance Jamming -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Burst Jammer", - "ecmBurstRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties=False if "skill" in context else True) diff --git a/eos/effects/ewskillewcapneedskilllevel.py b/eos/effects/ewskillewcapneedskilllevel.py deleted file mode 100644 index 6b1a25c5d..000000000 --- a/eos/effects/ewskillewcapneedskilllevel.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillEwCapNeedSkillLevel -# -# Used by: -# Implants named like: Zainou 'Gypsy' Electronic Warfare EW (6 of 6) -# Modules named like: Signal Disruption Amplifier (8 of 8) -# Skill: Electronic Warfare -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/ewskillewfalloffbonus.py b/eos/effects/ewskillewfalloffbonus.py deleted file mode 100644 index 931a640f6..000000000 --- a/eos/effects/ewskillewfalloffbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewSkillEwFallOffBonus -# -# Used by: -# Skill: Frequency Modulation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskillewmaxrangebonus.py b/eos/effects/ewskillewmaxrangebonus.py deleted file mode 100644 index 68cbc4d83..000000000 --- a/eos/effects/ewskillewmaxrangebonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# ewSkillEwMaxRangeBonus -# -# Used by: -# Implants named like: grade Centurion (10 of 12) -# Modules named like: Particle Dispersion Projector (8 of 8) -# Skill: Long Distance Jamming -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties="skill" not in context and "implant" not in context) diff --git a/eos/effects/ewskillguidancedisruptionbonus.py b/eos/effects/ewskillguidancedisruptionbonus.py deleted file mode 100644 index 71c4a3dc9..000000000 --- a/eos/effects/ewskillguidancedisruptionbonus.py +++ /dev/null @@ -1,18 +0,0 @@ -# ewSkillGuidanceDisruptionBonus -# -# Used by: -# Modules named like: Tracking Diagnostic Subroutines (8 of 8) -# Skill: Weapon Destabilization -type = "passive" - - -def handler(fit, src, context): - level = src.level if "skill" in context else 1 - for attr in ( - "explosionDelayBonus", - "aoeVelocityBonus", - "aoeCloudSizeBonus", - "missileVelocityBonus" - ): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), - attr, src.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/ewskillrsdcapneedbonusskilllevel.py b/eos/effects/ewskillrsdcapneedbonusskilllevel.py deleted file mode 100644 index e7f0f80cb..000000000 --- a/eos/effects/ewskillrsdcapneedbonusskilllevel.py +++ /dev/null @@ -1,12 +0,0 @@ -# ewSkillRsdCapNeedBonusSkillLevel -# -# Used by: -# Implants named like: Zainou 'Gypsy' Sensor Linking SL (6 of 6) -# Skill: Sensor Linking -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/ewskillrsdfalloffbonus.py b/eos/effects/ewskillrsdfalloffbonus.py deleted file mode 100644 index 21ab67c21..000000000 --- a/eos/effects/ewskillrsdfalloffbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewSkillRsdFallOffBonus -# -# Used by: -# Skill: Frequency Modulation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), - "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskillrsdmaxrangebonus.py b/eos/effects/ewskillrsdmaxrangebonus.py deleted file mode 100644 index a0d8a7db7..000000000 --- a/eos/effects/ewskillrsdmaxrangebonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillRsdMaxRangeBonus -# -# Used by: -# Modules named like: Particle Dispersion Projector (8 of 8) -# Skill: Long Distance Jamming -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Sensor Linking"), - "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties="skill" not in context) diff --git a/eos/effects/ewskillscanstrengthbonus.py b/eos/effects/ewskillscanstrengthbonus.py deleted file mode 100644 index 1af9d30f4..000000000 --- a/eos/effects/ewskillscanstrengthbonus.py +++ /dev/null @@ -1,16 +0,0 @@ -# ewSkillScanStrengthBonus -# -# Used by: -# Modules named like: Particle Dispersion Augmentor (8 of 8) -# Skill: Signal Dispersion -type = "passive" - - -def handler(fit, container, context): - groups = ("ECM", "Burst Jammer") - level = container.level if "skill" in context else 1 - for scanType in ("Gravimetric", "Ladar", "Magnetometric", "Radar"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "scan{0}StrengthBonus".format(scanType), - container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level, - stackingPenalties=False if "skill" in context else True) diff --git a/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py b/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py deleted file mode 100644 index 534c3af7a..000000000 --- a/eos/effects/ewskillsignalsuppressionmaxtargetrangebonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillSignalSuppressionMaxTargetRangeBonus -# -# Used by: -# Modules named like: Inverted Signal Field Projector (8 of 8) -# Skill: Signal Suppression -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", - container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py b/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py deleted file mode 100644 index 0f218ec69..000000000 --- a/eos/effects/ewskillsignalsuppressionscanresolutionbonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# ewSkillSignalSuppressionScanResolutionBonus -# -# Used by: -# Modules named like: Inverted Signal Field Projector (8 of 8) -# Skill: Signal Suppression -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalized = False if "skill" in context else True - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", - container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level, - stackingPenalties=penalized) diff --git a/eos/effects/ewskilltargetpaintingstrengthbonus.py b/eos/effects/ewskilltargetpaintingstrengthbonus.py deleted file mode 100644 index bf1267d77..000000000 --- a/eos/effects/ewskilltargetpaintingstrengthbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# ewSkillTargetPaintingStrengthBonus -# -# Used by: -# Skill: Signature Focusing -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", - skill.getModifiedItemAttr("scanSkillTargetPaintStrengthBonus") * skill.level) diff --git a/eos/effects/ewskilltdcapneedbonusskilllevel.py b/eos/effects/ewskilltdcapneedbonusskilllevel.py deleted file mode 100644 index 88e084361..000000000 --- a/eos/effects/ewskilltdcapneedbonusskilllevel.py +++ /dev/null @@ -1,12 +0,0 @@ -# ewSkillTdCapNeedBonusSkillLevel -# -# Used by: -# Implants named like: Zainou 'Gypsy' Weapon Disruption WD (6 of 6) -# Skill: Weapon Disruption -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/ewskilltdfalloffbonus.py b/eos/effects/ewskilltdfalloffbonus.py deleted file mode 100644 index 6b1490fc6..000000000 --- a/eos/effects/ewskilltdfalloffbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewSkillTdFallOffBonus -# -# Used by: -# Skill: Frequency Modulation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", - "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskilltdmaxrangebonus.py b/eos/effects/ewskilltdmaxrangebonus.py deleted file mode 100644 index 1ed5b55d5..000000000 --- a/eos/effects/ewskilltdmaxrangebonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillTdMaxRangeBonus -# -# Used by: -# Modules named like: Particle Dispersion Projector (8 of 8) -# Skill: Long Distance Jamming -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", - "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties="skill" not in context) diff --git a/eos/effects/ewskilltpcapneedbonusskilllevel.py b/eos/effects/ewskilltpcapneedbonusskilllevel.py deleted file mode 100644 index 720cea451..000000000 --- a/eos/effects/ewskilltpcapneedbonusskilllevel.py +++ /dev/null @@ -1,12 +0,0 @@ -# ewSkillTpCapNeedBonusSkillLevel -# -# Used by: -# Implants named like: Zainou 'Gypsy' Target Painting TG (6 of 6) -# Skill: Target Painting -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/ewskilltpfalloffbonus.py b/eos/effects/ewskilltpfalloffbonus.py deleted file mode 100644 index 38eebe10a..000000000 --- a/eos/effects/ewskilltpfalloffbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# ewSkillTpFallOffBonus -# -# Used by: -# Skill: Frequency Modulation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "falloffEffectiveness", skill.getModifiedItemAttr("falloffBonus") * skill.level) diff --git a/eos/effects/ewskilltpmaxrangebonus.py b/eos/effects/ewskilltpmaxrangebonus.py deleted file mode 100644 index 901d4c45b..000000000 --- a/eos/effects/ewskilltpmaxrangebonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillTpMaxRangeBonus -# -# Used by: -# Modules named like: Particle Dispersion Projector (8 of 8) -# Skill: Long Distance Jamming -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level, - stackingPenalties="skill" not in context) diff --git a/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py b/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py deleted file mode 100644 index fbd6ae8af..000000000 --- a/eos/effects/ewskilltrackingdisruptionrangedisruptionbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillTrackingDisruptionRangeDisruptionBonus -# -# Used by: -# Modules named like: Tracking Diagnostic Subroutines (8 of 8) -# Skill: Weapon Destabilization -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - for attr in ("maxRangeBonus", "falloffBonus"): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), - attr, container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py b/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py deleted file mode 100644 index 6a532270d..000000000 --- a/eos/effects/ewskilltrackingdisruptiontrackingspeedbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# ewSkillTrackingDisruptionTrackingSpeedBonus -# -# Used by: -# Modules named like: Tracking Diagnostic Subroutines (8 of 8) -# Skill: Weapon Destabilization -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Weapon Disruptor", - "trackingSpeedBonus", - container.getModifiedItemAttr("scanSkillEwStrengthBonus") * level) diff --git a/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py b/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py deleted file mode 100644 index 65889bd4d..000000000 --- a/eos/effects/expeditionfrigatebonusiceharvestingcycletime2.py +++ /dev/null @@ -1,10 +0,0 @@ -# expeditionFrigateBonusIceHarvestingCycleTime2 -# -# Used by: -# Ship: Endurance -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", - src.getModifiedItemAttr("eliteBonusExpedition2"), skill="Expedition Frigates") diff --git a/eos/effects/expeditionfrigateshieldresistance1.py b/eos/effects/expeditionfrigateshieldresistance1.py deleted file mode 100644 index ff05639dc..000000000 --- a/eos/effects/expeditionfrigateshieldresistance1.py +++ /dev/null @@ -1,16 +0,0 @@ -# expeditionFrigateShieldResistance1 -# -# Used by: -# Ship: Endurance -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), - skill="Expedition Frigates") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), - skill="Expedition Frigates") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), - skill="Expedition Frigates") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("eliteBonusExpedition1"), - skill="Expedition Frigates") diff --git a/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py deleted file mode 100644 index 05511b42f..000000000 --- a/eos/effects/explosivearmorcompensationhardeningbonusgrouparmorcoating.py +++ /dev/null @@ -1,11 +0,0 @@ -# explosiveArmorCompensationHardeningBonusGroupArmorCoating -# -# Used by: -# Skill: Explosive Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", - "explosiveDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py b/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py deleted file mode 100644 index 556cbb7f2..000000000 --- a/eos/effects/explosivearmorcompensationhardeningbonusgroupenergized.py +++ /dev/null @@ -1,11 +0,0 @@ -# explosiveArmorCompensationHardeningBonusGroupEnergized -# -# Used by: -# Skill: Explosive Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "explosiveDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py deleted file mode 100644 index 332ccae6e..000000000 --- a/eos/effects/explosiveshieldcompensationhardeningbonusgroupshieldamp.py +++ /dev/null @@ -1,11 +0,0 @@ -# explosiveShieldCompensationHardeningBonusGroupShieldAmp -# -# Used by: -# Skill: Explosive Shield Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "explosiveDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/falloffbonuseffecthybrids.py b/eos/effects/falloffbonuseffecthybrids.py deleted file mode 100644 index 94f3ab90b..000000000 --- a/eos/effects/falloffbonuseffecthybrids.py +++ /dev/null @@ -1,11 +0,0 @@ -# falloffBonusEffectHybrids -# -# Used by: -# Modules named like: Hybrid Ambit Extension (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) diff --git a/eos/effects/falloffbonuseffectlasers.py b/eos/effects/falloffbonuseffectlasers.py deleted file mode 100644 index dd5838c5a..000000000 --- a/eos/effects/falloffbonuseffectlasers.py +++ /dev/null @@ -1,11 +0,0 @@ -# falloffBonusEffectLasers -# -# Used by: -# Modules named like: Energy Ambit Extension (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) diff --git a/eos/effects/falloffbonuseffectprojectiles.py b/eos/effects/falloffbonuseffectprojectiles.py deleted file mode 100644 index 0de580e18..000000000 --- a/eos/effects/falloffbonuseffectprojectiles.py +++ /dev/null @@ -1,11 +0,0 @@ -# falloffBonusEffectProjectiles -# -# Used by: -# Modules named like: Projectile Ambit Extension (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) diff --git a/eos/effects/federationsetbonus3.py b/eos/effects/federationsetbonus3.py deleted file mode 100644 index f73c4d6af..000000000 --- a/eos/effects/federationsetbonus3.py +++ /dev/null @@ -1,12 +0,0 @@ -# federationsetbonus3 -# -# Used by: -# Implants named like: High grade Spur (6 of 6) -type = "passive" -runTime = "early" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanMagnetometricStrengthPercent", - implant.getModifiedItemAttr("implantSetFederationNavy")) diff --git a/eos/effects/federationsetlgbonus.py b/eos/effects/federationsetlgbonus.py deleted file mode 100644 index a393582ba..000000000 --- a/eos/effects/federationsetlgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# federationsetLGbonus -# -# Used by: -# Implants named like: Low grade Spur (6 of 6) -type = "passive" -runTime = "early" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanMagnetometricStrengthModifier", - implant.getModifiedItemAttr("implantSetLGFederationNavy")) diff --git a/eos/effects/fighterabilityattackm.py b/eos/effects/fighterabilityattackm.py deleted file mode 100644 index d0a028f48..000000000 --- a/eos/effects/fighterabilityattackm.py +++ /dev/null @@ -1,20 +0,0 @@ -# fighterAbilityAttackM -# -# Used by: -# Items from category: Fighter (50 of 82) -# Fighters from group: Heavy Fighter (34 of 34) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -# User-friendly name for the ability -displayName = "Turret Attack" - -# Attribute prefix that this ability targets -prefix = "fighterAbilityAttackMissile" - -type = "active" - - -def handler(fit, src, context): - pass diff --git a/eos/effects/fighterabilityecm.py b/eos/effects/fighterabilityecm.py deleted file mode 100644 index cfc9c21db..000000000 --- a/eos/effects/fighterabilityecm.py +++ /dev/null @@ -1,29 +0,0 @@ -# fighterAbilityECM -# -# Used by: -# Fighters named like: Scarab (4 of 4) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -from eos.modifiedAttributeDict import ModifiedAttributeDict - -# User-friendly name for the ability -displayName = "ECM" - -prefix = "fighterAbilityECM" - -type = "projected", "active" -grouped = True - - -def handler(fit, module, context, **kwargs): - if "projected" not in context: - return - # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - (module.getModifiedItemAttr("{}Strength{}".format(prefix, fit.scanType)) * module.amountActive) / fit.scanStrength - - if 'effect' in kwargs: - strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/fighterabilityenergyneutralizer.py b/eos/effects/fighterabilityenergyneutralizer.py deleted file mode 100644 index 28b68d089..000000000 --- a/eos/effects/fighterabilityenergyneutralizer.py +++ /dev/null @@ -1,26 +0,0 @@ -# fighterAbilityEnergyNeutralizer -# -# Used by: -# Fighters named like: Cenobite (4 of 4) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -# User-friendly name for the ability -from eos.modifiedAttributeDict import ModifiedAttributeDict - -displayName = "Energy Neutralizer" -prefix = "fighterAbilityEnergyNeutralizer" -type = "active", "projected" -grouped = True - - -def handler(fit, src, context, **kwargs): - if "projected" in context: - amount = src.getModifiedItemAttr("{}Amount".format(prefix)) * src.amountActive - time = src.getModifiedItemAttr("{}Duration".format(prefix)) - - if 'effect' in kwargs: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.addDrain(src, time, amount, 0) diff --git a/eos/effects/fighterabilityevasivemaneuvers.py b/eos/effects/fighterabilityevasivemaneuvers.py deleted file mode 100644 index 151effaaa..000000000 --- a/eos/effects/fighterabilityevasivemaneuvers.py +++ /dev/null @@ -1,40 +0,0 @@ -# fighterAbilityEvasiveManeuvers -# -# Used by: -# Fighters from group: Light Fighter (16 of 32) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -# User-friendly name for the ability -displayName = "Evasive Maneuvers" - -prefix = "fighterAbilityEvasiveManeuvers" - -# Is ability applied to the fighter squad as a whole, or per fighter? -grouped = True - -type = "active" -runTime = "late" - - -def handler(fit, container, context): - container.boostItemAttr("maxVelocity", - container.getModifiedItemAttr("fighterAbilityEvasiveManeuversSpeedBonus")) - container.boostItemAttr("signatureRadius", - container.getModifiedItemAttr("fighterAbilityEvasiveManeuversSignatureRadiusBonus"), - stackingPenalties=True) - - # These may not have stacking penalties, but there's nothing else that affects the attributes yet to check. - container.multiplyItemAttr("shieldEmDamageResonance", - container.getModifiedItemAttr("fighterAbilityEvasiveManeuversEmResonance"), - stackingPenalties=True) - container.multiplyItemAttr("shieldThermalDamageResonance", - container.getModifiedItemAttr("fighterAbilityEvasiveManeuversThermResonance"), - stackingPenalties=True) - container.multiplyItemAttr("shieldKineticDamageResonance", - container.getModifiedItemAttr("fighterAbilityEvasiveManeuversKinResonance"), - stackingPenalties=True) - container.multiplyItemAttr("shieldExplosiveDamageResonance", - container.getModifiedItemAttr("fighterAbilityEvasiveManeuversExpResonance"), - stackingPenalties=True) diff --git a/eos/effects/fighterabilitylaunchbomb.py b/eos/effects/fighterabilitylaunchbomb.py deleted file mode 100644 index 03763fd5a..000000000 --- a/eos/effects/fighterabilitylaunchbomb.py +++ /dev/null @@ -1,22 +0,0 @@ -# fighterAbilityLaunchBomb -# -# Used by: -# Fighters from group: Heavy Fighter (16 of 34) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -# User-friendly name for the ability -displayName = "Bomb" - -# Attribute prefix that this ability targets -prefix = "fighterAbilityLaunchBomb" - -type = "active" - -# This flag is required for effects that use charges in order to properly calculate reload time -hasCharges = True - - -def handler(fit, src, context): - pass diff --git a/eos/effects/fighterabilitymicrowarpdrive.py b/eos/effects/fighterabilitymicrowarpdrive.py deleted file mode 100644 index d9cfdbe47..000000000 --- a/eos/effects/fighterabilitymicrowarpdrive.py +++ /dev/null @@ -1,24 +0,0 @@ -# fighterAbilityMicroWarpDrive -# -# Used by: -# Items from category: Fighter (48 of 82) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -# User-friendly name for the ability -displayName = "Microwarpdrive" - -# Is ability applied to the fighter squad as a whole, or per fighter? -grouped = True - -type = "active" -runTime = "late" - - -def handler(fit, module, context): - module.boostItemAttr("maxVelocity", module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSpeedBonus"), - stackingPenalties=True) - module.boostItemAttr("signatureRadius", - module.getModifiedItemAttr("fighterAbilityMicroWarpDriveSignatureRadiusBonus"), - stackingPenalties=True) diff --git a/eos/effects/fighterabilitymissiles.py b/eos/effects/fighterabilitymissiles.py deleted file mode 100644 index c6dde777e..000000000 --- a/eos/effects/fighterabilitymissiles.py +++ /dev/null @@ -1,23 +0,0 @@ -# fighterAbilityMissiles -# -# Used by: -# Items from category: Fighter (48 of 82) -# Fighters from group: Light Fighter (32 of 32) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" -# User-friendly name for the ability -displayName = "Missile Attack" - -# Attribute prefix that this ability targets -prefix = "fighterAbilityMissiles" - -type = "active" - -# This flag is required for effects that use charges in order to properly calculate reload time -hasCharges = True - - -def handler(fit, src, context): - pass diff --git a/eos/effects/fighterabilitystasiswebifier.py b/eos/effects/fighterabilitystasiswebifier.py deleted file mode 100644 index 640cff4c0..000000000 --- a/eos/effects/fighterabilitystasiswebifier.py +++ /dev/null @@ -1,21 +0,0 @@ -# fighterAbilityStasisWebifier -# -# Used by: -# Fighters named like: Dromi (4 of 4) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" - -# User-friendly name for the ability -displayName = "Stasis Webifier" -prefix = "fighterAbilityStasisWebifier" -type = "active", "projected" -grouped = True - - -def handler(fit, src, context): - if "projected" not in context: - return - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("{}SpeedPenalty".format(prefix)) * src.amountActive, - stackingPenalties=True) diff --git a/eos/effects/fighterabilitywarpdisruption.py b/eos/effects/fighterabilitywarpdisruption.py deleted file mode 100644 index e62c34de7..000000000 --- a/eos/effects/fighterabilitywarpdisruption.py +++ /dev/null @@ -1,20 +0,0 @@ -# fighterAbilityWarpDisruption -# -# Used by: -# Fighters named like: Siren (4 of 4) -""" -Since fighter abilities do not have any sort of item entity in the EVE database, we must derive the abilities from the -effects, and thus this effect file contains some custom information useful only to fighters. -""" - -# User-friendly name for the ability -displayName = "Warp Disruption" -prefix = "fighterAbilityWarpDisruption" -type = "active", "projected" -grouped = True - - -def handler(fit, src, context): - if "projected" not in context: - return - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("{}PointStrength".format(prefix)) * src.amountActive) diff --git a/eos/effects/freighteragilitybonus2o2.py b/eos/effects/freighteragilitybonus2o2.py deleted file mode 100644 index 740a25522..000000000 --- a/eos/effects/freighteragilitybonus2o2.py +++ /dev/null @@ -1,10 +0,0 @@ -# freighterAgilityBonus2O2 -# -# Used by: -# Ship: Bowhead -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shipMaintenanceBayCapacity", ship.getModifiedItemAttr("freighterBonusO1"), - skill="ORE Freighter") diff --git a/eos/effects/freighteragilitybonusa1.py b/eos/effects/freighteragilitybonusa1.py deleted file mode 100644 index 8aa4fa822..000000000 --- a/eos/effects/freighteragilitybonusa1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterAgilityBonusA1 -# -# Used by: -# Ship: Ark -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusA1"), skill="Amarr Freighter") diff --git a/eos/effects/freighteragilitybonusc1.py b/eos/effects/freighteragilitybonusc1.py deleted file mode 100644 index 02d6f9eae..000000000 --- a/eos/effects/freighteragilitybonusc1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterAgilityBonusC1 -# -# Used by: -# Ship: Rhea -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusC1"), skill="Caldari Freighter") diff --git a/eos/effects/freighteragilitybonusg1.py b/eos/effects/freighteragilitybonusg1.py deleted file mode 100644 index 54f7e1a62..000000000 --- a/eos/effects/freighteragilitybonusg1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterAgilityBonusG1 -# -# Used by: -# Ship: Anshar -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusG1"), skill="Gallente Freighter") diff --git a/eos/effects/freighteragilitybonusm1.py b/eos/effects/freighteragilitybonusm1.py deleted file mode 100644 index 99100cf31..000000000 --- a/eos/effects/freighteragilitybonusm1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterAgilityBonusM1 -# -# Used by: -# Ship: Nomad -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusM1"), skill="Minmatar Freighter") diff --git a/eos/effects/freightercargobonusa2.py b/eos/effects/freightercargobonusa2.py deleted file mode 100644 index beda51a4c..000000000 --- a/eos/effects/freightercargobonusa2.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterCargoBonusA2 -# -# Used by: -# Variations of ship: Providence (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusA2"), skill="Amarr Freighter") diff --git a/eos/effects/freightercargobonusc2.py b/eos/effects/freightercargobonusc2.py deleted file mode 100644 index 35085c886..000000000 --- a/eos/effects/freightercargobonusc2.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterCargoBonusC2 -# -# Used by: -# Variations of ship: Charon (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusC2"), skill="Caldari Freighter") diff --git a/eos/effects/freightercargobonusg2.py b/eos/effects/freightercargobonusg2.py deleted file mode 100644 index 4b4807871..000000000 --- a/eos/effects/freightercargobonusg2.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterCargoBonusG2 -# -# Used by: -# Variations of ship: Obelisk (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusG2"), skill="Gallente Freighter") diff --git a/eos/effects/freightercargobonusm2.py b/eos/effects/freightercargobonusm2.py deleted file mode 100644 index ee616cb53..000000000 --- a/eos/effects/freightercargobonusm2.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterCargoBonusM2 -# -# Used by: -# Variations of ship: Fenrir (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("freighterBonusM2"), skill="Minmatar Freighter") diff --git a/eos/effects/freightermaxvelocitybonusa1.py b/eos/effects/freightermaxvelocitybonusa1.py deleted file mode 100644 index 0842ef288..000000000 --- a/eos/effects/freightermaxvelocitybonusa1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterMaxVelocityBonusA1 -# -# Used by: -# Ship: Providence -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusA1"), skill="Amarr Freighter") diff --git a/eos/effects/freightermaxvelocitybonusc1.py b/eos/effects/freightermaxvelocitybonusc1.py deleted file mode 100644 index e81e55459..000000000 --- a/eos/effects/freightermaxvelocitybonusc1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterMaxVelocityBonusC1 -# -# Used by: -# Ship: Charon -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusC1"), skill="Caldari Freighter") diff --git a/eos/effects/freightermaxvelocitybonusg1.py b/eos/effects/freightermaxvelocitybonusg1.py deleted file mode 100644 index 4fc3f4844..000000000 --- a/eos/effects/freightermaxvelocitybonusg1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterMaxVelocityBonusG1 -# -# Used by: -# Ship: Obelisk -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusG1"), skill="Gallente Freighter") diff --git a/eos/effects/freightermaxvelocitybonusm1.py b/eos/effects/freightermaxvelocitybonusm1.py deleted file mode 100644 index 497d0797f..000000000 --- a/eos/effects/freightermaxvelocitybonusm1.py +++ /dev/null @@ -1,9 +0,0 @@ -# freighterMaxVelocityBonusM1 -# -# Used by: -# Ship: Fenrir -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("freighterBonusM1"), skill="Minmatar Freighter") diff --git a/eos/effects/freightersmacapacitybonuso1.py b/eos/effects/freightersmacapacitybonuso1.py deleted file mode 100644 index 92df1ab36..000000000 --- a/eos/effects/freightersmacapacitybonuso1.py +++ /dev/null @@ -1,11 +0,0 @@ -# freighterSMACapacityBonusO1 -# -# Used by: -# Ship: Bowhead -type = "passive" - - -def handler(fit, ship, context): - # todo: stacking? - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("freighterBonusO2"), skill="ORE Freighter", - stackingPenalties=True) diff --git a/eos/effects/frequencymininglasermaxrangebonus.py b/eos/effects/frequencymininglasermaxrangebonus.py deleted file mode 100644 index 9285d51b8..000000000 --- a/eos/effects/frequencymininglasermaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# frequencyMiningLaserMaxRangeBonus -# -# Used by: -# Implants named like: grade Harvest (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Frequency Mining Laser", - "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py b/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py deleted file mode 100644 index bdc5f5269..000000000 --- a/eos/effects/fuelconservationcapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringafterburner.py +++ /dev/null @@ -1,11 +0,0 @@ -# fuelConservationCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringAfterburner -# -# Used by: -# Skill: Afterburner -# Skill: Fuel Conservation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/fueledarmorrepair.py b/eos/effects/fueledarmorrepair.py deleted file mode 100644 index 79f9cf1e2..000000000 --- a/eos/effects/fueledarmorrepair.py +++ /dev/null @@ -1,20 +0,0 @@ -# fueledArmorRepair -# -# Used by: -# Modules from group: Ancillary Armor Repairer (7 of 7) -runTime = "late" -type = "active" - - -def handler(fit, module, context): - if module.charge and module.charge.name == "Nanite Repair Paste": - multiplier = 3 - else: - multiplier = 1 - - amount = module.getModifiedItemAttr("armorDamageAmount") * multiplier - speed = module.getModifiedItemAttr("duration") / 1000.0 - rps = amount / speed - fit.extraAttributes.increase("armorRepair", rps) - fit.extraAttributes.increase("armorRepairPreSpool", rps) - fit.extraAttributes.increase("armorRepairFullSpool", rps) diff --git a/eos/effects/fueledshieldboosting.py b/eos/effects/fueledshieldboosting.py deleted file mode 100644 index 0cbbd439c..000000000 --- a/eos/effects/fueledshieldboosting.py +++ /dev/null @@ -1,12 +0,0 @@ -# fueledShieldBoosting -# -# Used by: -# Modules from group: Ancillary Shield Booster (8 of 8) -runTime = "late" -type = "active" - - -def handler(fit, module, context): - amount = module.getModifiedItemAttr("shieldBonus") - speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", amount / speed) diff --git a/eos/effects/gascloudharvestingmaxgroupskilllevel.py b/eos/effects/gascloudharvestingmaxgroupskilllevel.py deleted file mode 100644 index 3491f2f44..000000000 --- a/eos/effects/gascloudharvestingmaxgroupskilllevel.py +++ /dev/null @@ -1,10 +0,0 @@ -# gasCloudHarvestingMaxGroupSkillLevel -# -# Used by: -# Skill: Gas Cloud Harvesting -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Gas Cloud Harvester", - "maxGroupActive", skill.level) diff --git a/eos/effects/gasharvestermaxrangebonus.py b/eos/effects/gasharvestermaxrangebonus.py deleted file mode 100644 index dbfd9f564..000000000 --- a/eos/effects/gasharvestermaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# gasHarvesterMaxRangeBonus -# -# Used by: -# Implants named like: grade Harvest (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Gas Cloud Harvester", - "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py b/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py deleted file mode 100644 index 015bad393..000000000 --- a/eos/effects/gasharvestingcycletimemodulesrequiringgascloudharvesting.py +++ /dev/null @@ -1,10 +0,0 @@ -# gasHarvestingCycleTimeModulesRequiringGasCloudHarvesting -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Gas Harvesting GH (3 of 3) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gas Cloud Harvesting"), - "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/gchyieldmultiplypassive.py b/eos/effects/gchyieldmultiplypassive.py deleted file mode 100644 index c62e662e5..000000000 --- a/eos/effects/gchyieldmultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# GCHYieldMultiplyPassive -# -# Used by: -# Ship: Prospect -# Ship: Venture -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Gas Cloud Harvester", - "miningAmount", module.getModifiedItemAttr("miningAmountMultiplier")) diff --git a/eos/effects/gunneryfalloffbonusonline.py b/eos/effects/gunneryfalloffbonusonline.py deleted file mode 100644 index 00532b254..000000000 --- a/eos/effects/gunneryfalloffbonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# gunneryFalloffBonusOnline -# -# Used by: -# Modules from group: Tracking Enhancer (10 of 10) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) diff --git a/eos/effects/gunnerymaxrangebonusonline.py b/eos/effects/gunnerymaxrangebonusonline.py deleted file mode 100644 index 284d5b3ca..000000000 --- a/eos/effects/gunnerymaxrangebonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# gunneryMaxRangeBonusOnline -# -# Used by: -# Modules from group: Tracking Enhancer (10 of 10) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py b/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py deleted file mode 100644 index ef6c60e3b..000000000 --- a/eos/effects/gunnerymaxrangefallofftrackingspeedbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# gunneryMaxRangeFalloffTrackingSpeedBonus -# -# Used by: -# Modules from group: Tracking Computer (11 of 11) -type = "active" - - -def handler(fit, module, context): - for attr in ("maxRange", "falloff", "trackingSpeed"): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - attr, module.getModifiedItemAttr("%sBonus" % attr), - stackingPenalties=True) diff --git a/eos/effects/gunnerytrackingspeedbonusonline.py b/eos/effects/gunnerytrackingspeedbonusonline.py deleted file mode 100644 index bec1111d7..000000000 --- a/eos/effects/gunnerytrackingspeedbonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# gunneryTrackingSpeedBonusOnline -# -# Used by: -# Modules from group: Tracking Enhancer (10 of 10) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True) diff --git a/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py b/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py deleted file mode 100644 index fc4a45d26..000000000 --- a/eos/effects/gunneryturretspeebonuspostpercentspeedlocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,13 +0,0 @@ -# gunneryTurretSpeeBonusPostPercentSpeedLocationShipModulesRequiringGunnery -# -# Used by: -# Implants named like: Inherent Implants 'Lancer' Gunnery RF (6 of 6) -# Implant: Pashan's Turret Customization Mindlink -# Skill: Gunnery -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "speed", container.getModifiedItemAttr("turretSpeeBonus") * level) diff --git a/eos/effects/hackingskillvirusbonus.py b/eos/effects/hackingskillvirusbonus.py deleted file mode 100644 index 45610c4f9..000000000 --- a/eos/effects/hackingskillvirusbonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# hackingSkillVirusBonus -# -# Used by: -# Modules named like: Memetic Algorithm Bank (8 of 8) -# Implant: Neural Lace 'Blackglass' Net Intrusion 920-40 -# Implant: Poteque 'Prospector' Environmental Analysis EY-1005 -# Implant: Poteque 'Prospector' Hacking HC-905 -# Skill: Hacking -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Hacking"), - "virusCoherence", container.getModifiedItemAttr("virusCoherenceBonus") * level) diff --git a/eos/effects/hackingvirusstrengthbonus.py b/eos/effects/hackingvirusstrengthbonus.py deleted file mode 100644 index 6307a9224..000000000 --- a/eos/effects/hackingvirusstrengthbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# hackingVirusStrengthBonus -# -# Used by: -# Implant: Neural Lace 'Blackglass' Net Intrusion 920-40 -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Hacking"), "virusStrength", src.getModifiedItemAttr("virusStrengthBonus")) diff --git a/eos/effects/hardpointmodifiereffect.py b/eos/effects/hardpointmodifiereffect.py deleted file mode 100644 index 33f3fc576..000000000 --- a/eos/effects/hardpointmodifiereffect.py +++ /dev/null @@ -1,10 +0,0 @@ -# hardPointModifierEffect -# -# Used by: -# Subsystems from group: Offensive Systems (12 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("turretSlotsLeft", module.getModifiedItemAttr("turretHardPointModifier")) - fit.ship.increaseItemAttr("launcherSlotsLeft", module.getModifiedItemAttr("launcherHardPointModifier")) diff --git a/eos/effects/heatdamagebonus.py b/eos/effects/heatdamagebonus.py deleted file mode 100644 index a4648cefa..000000000 --- a/eos/effects/heatdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# heatDamageBonus -# -# Used by: -# Modules from group: Shield Boost Amplifier (25 of 25) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "heatDamage", module.getModifiedItemAttr("heatDamageBonus")) diff --git a/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py b/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py deleted file mode 100644 index 12ae33b27..000000000 --- a/eos/effects/highspeedmanuveringcapacitorneedmultiplierpostpercentcapacitorneedlocationshipmodulesrequiringhighspeedmanuvering.py +++ /dev/null @@ -1,12 +0,0 @@ -# highSpeedManuveringCapacitorNeedMultiplierPostPercentCapacitorNeedLocationShipModulesRequiringHighSpeedManuvering -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' High Speed Maneuvering HS (6 of 6) -# Skill: High Speed Maneuvering -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py b/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py deleted file mode 100644 index 9d9ba7b72..000000000 --- a/eos/effects/hullupgradesarmorhpbonuspostpercenthplocationship.py +++ /dev/null @@ -1,14 +0,0 @@ -# hullUpgradesArmorHpBonusPostPercentHpLocationShip -# -# Used by: -# Implants named like: grade Slave (15 of 18) -# Modules named like: Trimark Armor Pump (8 of 8) -# Implant: Low-grade Snake Epsilon -# Implant: Mid-grade Snake Epsilon -# Skill: Hull Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("armorHP", (container.getModifiedItemAttr("armorHpBonus") or 0) * level) diff --git a/eos/effects/hybridweapondamagemultiply.py b/eos/effects/hybridweapondamagemultiply.py deleted file mode 100644 index 87166fc7c..000000000 --- a/eos/effects/hybridweapondamagemultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# hybridWeaponDamageMultiply -# -# Used by: -# Modules from group: Magnetic Field Stabilizer (15 of 15) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/hybridweapondamagemultiplypassive.py b/eos/effects/hybridweapondamagemultiplypassive.py deleted file mode 100644 index 53dcbda89..000000000 --- a/eos/effects/hybridweapondamagemultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# hybridWeaponDamageMultiplyPassive -# -# Used by: -# Modules named like: Hybrid Collision Accelerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/hybridweaponspeedmultiply.py b/eos/effects/hybridweaponspeedmultiply.py deleted file mode 100644 index 876ef5b3c..000000000 --- a/eos/effects/hybridweaponspeedmultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# hybridWeaponSpeedMultiply -# -# Used by: -# Modules from group: Magnetic Field Stabilizer (15 of 15) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/hybridweaponspeedmultiplypassive.py b/eos/effects/hybridweaponspeedmultiplypassive.py deleted file mode 100644 index d40a2d630..000000000 --- a/eos/effects/hybridweaponspeedmultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# hybridWeaponSpeedMultiplyPassive -# -# Used by: -# Modules named like: Hybrid Burst Aerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Hybrid Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py b/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py deleted file mode 100644 index 7066cba7b..000000000 --- a/eos/effects/iceharvestcycletimemodulesrequiringiceharvesting.py +++ /dev/null @@ -1,13 +0,0 @@ -# iceHarvestCycleTimeModulesRequiringIceHarvesting -# -# Used by: -# Implants named like: Inherent Implants 'Yeti' Ice Harvesting IH (3 of 3) -# Module: Medium Ice Harvester Accelerator I -# Skill: Ice Harvesting -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", container.getModifiedItemAttr("iceHarvestCycleBonus") * level) diff --git a/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py b/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py deleted file mode 100644 index 500775345..000000000 --- a/eos/effects/iceharvestcycletimemodulesrequiringiceharvestingonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# iceHarvestCycleTimeModulesRequiringIceHarvestingOnline -# -# Used by: -# Variations of module: Ice Harvester Upgrade I (5 of 5) -# Module: Frostline 'Omnivore' Harvester Upgrade -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", module.getModifiedItemAttr("iceHarvestCycleBonus")) diff --git a/eos/effects/iceharvesterdurationmultiplier.py b/eos/effects/iceharvesterdurationmultiplier.py deleted file mode 100644 index 2b2cc75c8..000000000 --- a/eos/effects/iceharvesterdurationmultiplier.py +++ /dev/null @@ -1,10 +0,0 @@ -# iceHarvesterDurationMultiplier -# -# Used by: -# Ship: Endurance -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", ship.getModifiedItemAttr("iceHarvestCycleBonus")) diff --git a/eos/effects/iceharvestingdroneoperationdurationbonus.py b/eos/effects/iceharvestingdroneoperationdurationbonus.py deleted file mode 100644 index 9cd10d66a..000000000 --- a/eos/effects/iceharvestingdroneoperationdurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# iceHarvestingDroneOperationDurationBonus -# -# Used by: -# Modules named like: Drone Mining Augmentor (8 of 8) -# Skill: Ice Harvesting Drone Operation -type = "passive" - - -def handler(fit, src, context): - lvl = src.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting Drone Operation"), "duration", src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/iceharvestingdronespecbonus.py b/eos/effects/iceharvestingdronespecbonus.py deleted file mode 100644 index 18af9f3b1..000000000 --- a/eos/effects/iceharvestingdronespecbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# iceHarvestingDroneSpecBonus -# -# Used by: -# Skill: Ice Harvesting Drone Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting Drone Specialization"), "duration", - src.getModifiedItemAttr("rofBonus") * lvl) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting Drone Specialization"), - "maxVelocity", src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/iceminercpuusagepercent.py b/eos/effects/iceminercpuusagepercent.py deleted file mode 100644 index 666c030a6..000000000 --- a/eos/effects/iceminercpuusagepercent.py +++ /dev/null @@ -1,10 +0,0 @@ -# iceMinerCpuUsagePercent -# -# Used by: -# Variations of module: Ice Harvester Upgrade I (5 of 5) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "cpu", module.getModifiedItemAttr("cpuPenaltyPercent")) diff --git a/eos/effects/ignorecloakvelocitypenalty.py b/eos/effects/ignorecloakvelocitypenalty.py deleted file mode 100644 index 4ddfb60b1..000000000 --- a/eos/effects/ignorecloakvelocitypenalty.py +++ /dev/null @@ -1,11 +0,0 @@ -# ignoreCloakVelocityPenalty -# -# Used by: -# Ship: Endurance -type = "passive" -runTime = "early" - - -def handler(fit, src, context): - fit.modules.filteredItemForce(lambda mod: mod.item.group.name == "Cloaking Device", - "maxVelocityModifier", src.getModifiedItemAttr("velocityPenaltyReduction")) diff --git a/eos/effects/imperialsetbonus3.py b/eos/effects/imperialsetbonus3.py deleted file mode 100644 index bcd755f7f..000000000 --- a/eos/effects/imperialsetbonus3.py +++ /dev/null @@ -1,12 +0,0 @@ -# imperialsetbonus3 -# -# Used by: -# Implants named like: High grade Grail (6 of 6) -type = "passive" -runTime = "early" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanRadarStrengthPercent", - implant.getModifiedItemAttr("implantSetImperialNavy")) diff --git a/eos/effects/imperialsetlgbonus.py b/eos/effects/imperialsetlgbonus.py deleted file mode 100644 index fc14ae72d..000000000 --- a/eos/effects/imperialsetlgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# imperialsetLGbonus -# -# Used by: -# Implants named like: Low grade Grail (6 of 6) -type = "passive" -runTime = "early" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanRadarStrengthModifier", - implant.getModifiedItemAttr("implantSetLGImperialNavy")) diff --git a/eos/effects/implantarmorhpbonus2.py b/eos/effects/implantarmorhpbonus2.py deleted file mode 100644 index 36c997118..000000000 --- a/eos/effects/implantarmorhpbonus2.py +++ /dev/null @@ -1,12 +0,0 @@ -# implantArmorHpBonus2 -# -# Used by: -# Implants named like: Inherent Implants 'Noble' Hull Upgrades HG (7 of 7) -# Implant: Genolution Core Augmentation CA-4 -# Implant: Imperial Navy Modified 'Noble' Implant -# Implant: Imperial Special Ops Field Enhancer - Standard -type = "passive" - - -def handler(fit, implant, context): - fit.ship.boostItemAttr("armorHP", implant.getModifiedItemAttr("armorHpBonus2")) diff --git a/eos/effects/implanthardwiringabcapacitorneed.py b/eos/effects/implanthardwiringabcapacitorneed.py deleted file mode 100644 index 1f0adf21c..000000000 --- a/eos/effects/implanthardwiringabcapacitorneed.py +++ /dev/null @@ -1,10 +0,0 @@ -# implantHardwiringABcapacitorNeed -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' Fuel Conservation FC (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "capacitorNeed", implant.getModifiedItemAttr("capNeedBonus")) diff --git a/eos/effects/implantsetwarpspeed.py b/eos/effects/implantsetwarpspeed.py deleted file mode 100644 index ce351f428..000000000 --- a/eos/effects/implantsetwarpspeed.py +++ /dev/null @@ -1,11 +0,0 @@ -# implantSetWarpSpeed -# -# Used by: -# Implants named like: grade Ascendancy (12 of 12) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "WarpSBonus", implant.getModifiedItemAttr("implantSetWarpSpeed")) diff --git a/eos/effects/implantvelocitybonus.py b/eos/effects/implantvelocitybonus.py deleted file mode 100644 index d7841ad64..000000000 --- a/eos/effects/implantvelocitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# implantVelocityBonus -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' Navigation NN (6 of 6) -# Implant: Genolution Core Augmentation CA-3 -# Implant: Shaqil's Speed Enhancer -type = "passive" - - -def handler(fit, implant, context): - fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("implantBonusVelocity")) diff --git a/eos/effects/implantvelocitybonus2.py b/eos/effects/implantvelocitybonus2.py deleted file mode 100644 index 3a39e759f..000000000 --- a/eos/effects/implantvelocitybonus2.py +++ /dev/null @@ -1,9 +0,0 @@ -# implantVelocityBonus2 -# -# Used by: -# Implant: Republic Special Ops Field Enhancer - Gamma -type = "passive" - - -def handler(fit, implant, context): - fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus2")) diff --git a/eos/effects/implantwarpscramblerangebonus.py b/eos/effects/implantwarpscramblerangebonus.py deleted file mode 100644 index 8eea16959..000000000 --- a/eos/effects/implantwarpscramblerangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# implantWarpScrambleRangeBonus -# -# Used by: -# Implants named like: Inquest 'Hedone' Entanglement Optimizer WS (3 of 3) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", - src.getModifiedItemAttr("warpScrambleRangeBonus"), stackingPenalties=False) diff --git a/eos/effects/increasesignatureradiusonline.py b/eos/effects/increasesignatureradiusonline.py deleted file mode 100644 index 1ae8fe69a..000000000 --- a/eos/effects/increasesignatureradiusonline.py +++ /dev/null @@ -1,9 +0,0 @@ -# increaseSignatureRadiusOnline -# -# Used by: -# Modules from group: Inertial Stabilizer (7 of 7) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus"), stackingPenalties=True) diff --git a/eos/effects/industrialbonusdronedamage.py b/eos/effects/industrialbonusdronedamage.py deleted file mode 100644 index f6c5137bd..000000000 --- a/eos/effects/industrialbonusdronedamage.py +++ /dev/null @@ -1,18 +0,0 @@ -# industrialBonusDroneDamage -# -# Used by: -# Ships from group: Blockade Runner (4 of 4) -# Ships from group: Deep Space Transport (4 of 4) -# Ships from group: Exhumer (3 of 3) -# Ships from group: Industrial (17 of 17) -# Ships from group: Industrial Command Ship (2 of 2) -# Ships from group: Mining Barge (3 of 3) -# Variations of ship: Venture (3 of 3) -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", - src.getModifiedItemAttr("industrialBonusDroneDamage")) diff --git a/eos/effects/industrialcoreeffect2.py b/eos/effects/industrialcoreeffect2.py deleted file mode 100644 index f9efed36c..000000000 --- a/eos/effects/industrialcoreeffect2.py +++ /dev/null @@ -1,114 +0,0 @@ -# industrialCoreEffect2 -# -# Used by: -# Variations of module: Industrial Core I (2 of 2) -type = "active" -runTime = "early" - - -def handler(fit, src, context): - fit.extraAttributes["siege"] = True - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) - fit.ship.multiplyItemAttr("mass", src.getModifiedItemAttr("siegeMassMultiplier")) - fit.ship.multiplyItemAttr("scanResolution", - src.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties=True) - - # Remote Shield Repper Bonuses - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "duration", - src.getModifiedItemAttr("industrialCoreRemoteLogisticsDurationBonus"), - ) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "maxRange", - src.getModifiedItemAttr("industrialCoreRemoteLogisticsRangeBonus"), - stackingPenalties=True - ) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "capacitorNeed", - src.getModifiedItemAttr("industrialCoreRemoteLogisticsDurationBonus") - ) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), - "falloffEffectiveness", - src.getModifiedItemAttr("industrialCoreRemoteLogisticsRangeBonus"), - stackingPenalties=True - ) - - # Local Shield Repper Bonuses - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), - "duration", - src.getModifiedItemAttr("industrialCoreLocalLogisticsDurationBonus"), - ) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", - src.getModifiedItemAttr("industrialCoreLocalLogisticsAmountBonus"), - stackingPenalties=True - ) - - # Mining Burst Bonuses - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), - "warfareBuff1Value", - src.getModifiedItemAttr("industrialCoreBonusMiningBurstStrength"), - ) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), - "warfareBuff2Value", - src.getModifiedItemAttr("industrialCoreBonusMiningBurstStrength"), - ) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), - "warfareBuff3Value", - src.getModifiedItemAttr("industrialCoreBonusMiningBurstStrength"), - ) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), - "warfareBuff4Value", - src.getModifiedItemAttr("industrialCoreBonusMiningBurstStrength"), - ) - - # Command Burst Range Bonus - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), - "maxRange", - src.getModifiedItemAttr("industrialCoreBonusCommandBurstRange"), - stackingPenalties=True - ) - - # Drone Bonuses - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Ice Harvesting Drone Operation"), - "duration", - src.getModifiedItemAttr("industrialCoreBonusDroneIceHarvesting"), - ) - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", - src.getModifiedItemAttr("industrialCoreBonusDroneMining"), - ) - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxVelocity", - src.getModifiedItemAttr("industrialCoreBonusDroneVelocity"), - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", - src.getModifiedItemAttr("industrialCoreBonusDroneDamageHP"), - stackingPenalties=True - ) - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", - src.getModifiedItemAttr("industrialCoreBonusDroneDamageHP"), - ) - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", - src.getModifiedItemAttr("industrialCoreBonusDroneDamageHP"), - ) - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "hp", - src.getModifiedItemAttr("industrialCoreBonusDroneDamageHP"), - ) - - # Todo: remote impedance (no reps, etc) - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) - fit.ship.boostItemAttr("remoteRepairImpedance", src.getModifiedItemAttr("remoteRepairImpedanceBonus")) - fit.ship.increaseItemAttr("disallowTethering", src.getModifiedItemAttr("disallowTethering")) - fit.ship.boostItemAttr("sensorDampenerResistance", src.getModifiedItemAttr("sensorDampenerResistanceBonus")) - fit.ship.boostItemAttr("remoteAssistanceImpedance", src.getModifiedItemAttr("remoteAssistanceImpedanceBonus")) - fit.ship.increaseItemAttr("disallowDocking", src.getModifiedItemAttr("disallowDocking")) diff --git a/eos/effects/informationcommanddurationbonus.py b/eos/effects/informationcommanddurationbonus.py deleted file mode 100644 index f5a7dc351..000000000 --- a/eos/effects/informationcommanddurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# informationCommandDurationBonus -# -# Used by: -# Skill: Information Command -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/informationcommandmindlink.py b/eos/effects/informationcommandmindlink.py deleted file mode 100644 index f545ab629..000000000 --- a/eos/effects/informationcommandmindlink.py +++ /dev/null @@ -1,20 +0,0 @@ -# informationCommandMindlink -# -# Used by: -# Implant: Caldari Navy Command Mindlink -# Implant: Imperial Navy Command Mindlink -# Implant: Information Command Mindlink -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), "buffDuration", - src.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/informationcommandstrengthbonus.py b/eos/effects/informationcommandstrengthbonus.py deleted file mode 100644 index e4431bee0..000000000 --- a/eos/effects/informationcommandstrengthbonus.py +++ /dev/null @@ -1,17 +0,0 @@ -# informationCommandStrengthBonus -# -# Used by: -# Skill: Information Command Specialist -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Information Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) diff --git a/eos/effects/interceptor2hybridtracking.py b/eos/effects/interceptor2hybridtracking.py deleted file mode 100644 index c13c7bdea..000000000 --- a/eos/effects/interceptor2hybridtracking.py +++ /dev/null @@ -1,11 +0,0 @@ -# interceptor2HybridTracking -# -# Used by: -# Ship: Taranis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"), - skill="Interceptors") diff --git a/eos/effects/interceptor2lasertracking.py b/eos/effects/interceptor2lasertracking.py deleted file mode 100644 index bc71ac1e2..000000000 --- a/eos/effects/interceptor2lasertracking.py +++ /dev/null @@ -1,11 +0,0 @@ -# interceptor2LaserTracking -# -# Used by: -# Ship: Crusader -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusInterceptor2"), - skill="Interceptors") diff --git a/eos/effects/interceptor2projectiledamage.py b/eos/effects/interceptor2projectiledamage.py deleted file mode 100644 index 9d4cfeb97..000000000 --- a/eos/effects/interceptor2projectiledamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# interceptor2ProjectileDamage -# -# Used by: -# Ship: Claw -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("eliteBonusInterceptor2"), - skill="Interceptors") diff --git a/eos/effects/interceptor2shieldresist.py b/eos/effects/interceptor2shieldresist.py deleted file mode 100644 index 301cc98c4..000000000 --- a/eos/effects/interceptor2shieldresist.py +++ /dev/null @@ -1,12 +0,0 @@ -# Interceptor2ShieldResist -# -# Used by: -# Ship: Raptor -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("Em", "Explosive", "Kinetic", "Thermal") - for damageType in damageTypes: - fit.ship.boostItemAttr("shield{0}DamageResonance".format(damageType), - ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") diff --git a/eos/effects/interceptor2warpscramblerange.py b/eos/effects/interceptor2warpscramblerange.py deleted file mode 100644 index d878926d0..000000000 --- a/eos/effects/interceptor2warpscramblerange.py +++ /dev/null @@ -1,10 +0,0 @@ -# Interceptor2WarpScrambleRange -# -# Used by: -# Ships from group: Interceptor (6 of 10) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("eliteBonusInterceptor2"), skill="Interceptors") diff --git a/eos/effects/interceptormwdsignatureradiusbonus.py b/eos/effects/interceptormwdsignatureradiusbonus.py deleted file mode 100644 index 73157a691..000000000 --- a/eos/effects/interceptormwdsignatureradiusbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# interceptorMWDSignatureRadiusBonus -# -# Used by: -# Ships from group: Interceptor (10 of 10) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("eliteBonusInterceptor"), - skill="Interceptors") diff --git a/eos/effects/invulnerabilitycoredurationbonus.py b/eos/effects/invulnerabilitycoredurationbonus.py deleted file mode 100644 index b318f11cb..000000000 --- a/eos/effects/invulnerabilitycoredurationbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# invulnerabilityCoreDurationBonus -# -# Used by: -# Skill: Invulnerability Core Operation -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Invulnerability Core Operation"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Invulnerability Core Operation"), "duration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/jumpdriveskillscapacitorneedbonus.py b/eos/effects/jumpdriveskillscapacitorneedbonus.py deleted file mode 100644 index 578b0f47f..000000000 --- a/eos/effects/jumpdriveskillscapacitorneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# jumpDriveSkillsCapacitorNeedBonus -# -# Used by: -# Skill: Jump Drive Operation -type = "passive" - - -def handler(fit, skill, context): - fit.ship.boostItemAttr("jumpDriveCapacitorNeed", - skill.getModifiedItemAttr("jumpDriveCapacitorNeedBonus") * skill.level) diff --git a/eos/effects/jumpdriveskillsrangebonus.py b/eos/effects/jumpdriveskillsrangebonus.py deleted file mode 100644 index 86ff1b5ce..000000000 --- a/eos/effects/jumpdriveskillsrangebonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# jumpDriveSkillsRangeBonus -# -# Used by: -# Skill: Jump Drive Calibration -type = "passive" - - -def handler(fit, skill, context): - fit.ship.boostItemAttr("jumpDriveRange", skill.getModifiedItemAttr("jumpDriveRangeBonus") * skill.level) diff --git a/eos/effects/jumpportalconsumptionbonuspercentskill.py b/eos/effects/jumpportalconsumptionbonuspercentskill.py deleted file mode 100644 index b823680ed..000000000 --- a/eos/effects/jumpportalconsumptionbonuspercentskill.py +++ /dev/null @@ -1,10 +0,0 @@ -# jumpPortalConsumptionBonusPercentSkill -# -# Used by: -# Skill: Jump Portal Generation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "consumptionQuantity", - skill.getModifiedItemAttr("consumptionQuantityBonusPercent") * skill.level) diff --git a/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py deleted file mode 100644 index 90df83fb9..000000000 --- a/eos/effects/kineticarmorcompensationhardeningbonusgrouparmorcoating.py +++ /dev/null @@ -1,11 +0,0 @@ -# kineticArmorCompensationHardeningBonusGroupArmorCoating -# -# Used by: -# Skill: Kinetic Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", - "kineticDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py b/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py deleted file mode 100644 index 6300b21af..000000000 --- a/eos/effects/kineticarmorcompensationhardeningbonusgroupenergized.py +++ /dev/null @@ -1,11 +0,0 @@ -# kineticArmorCompensationHardeningBonusGroupEnergized -# -# Used by: -# Skill: Kinetic Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "kineticDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py deleted file mode 100644 index 3b07f5957..000000000 --- a/eos/effects/kineticshieldcompensationhardeningbonusgroupshieldamp.py +++ /dev/null @@ -1,11 +0,0 @@ -# kineticShieldCompensationHardeningBonusGroupShieldAmp -# -# Used by: -# Skill: Kinetic Shield Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "kineticDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/largedisintegratorskilldmgbonus.py b/eos/effects/largedisintegratorskilldmgbonus.py deleted file mode 100644 index c3b03337d..000000000 --- a/eos/effects/largedisintegratorskilldmgbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# largeDisintegratorSkillDmgBonus -# -# Used by: -# Skill: Large Disintegrator Specialization -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Disintegrator Specialization"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py b/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py deleted file mode 100644 index 09ffdc5fb..000000000 --- a/eos/effects/largeenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeenergyturret.py +++ /dev/null @@ -1,13 +0,0 @@ -# largeEnergyTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringLargeEnergyTurret -# -# Used by: -# Implants named like: Inherent Implants 'Lancer' Large Energy Turret LE (6 of 6) -# Implant: Pashan's Turret Handling Mindlink -# Skill: Large Energy Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py b/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py deleted file mode 100644 index ea808b755..000000000 --- a/eos/effects/largehybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargehybridturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# largeHybridTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringLargeHybridTurret -# -# Used by: -# Implants named like: Zainou 'Deadeye' Large Hybrid Turret LH (6 of 6) -# Skill: Large Hybrid Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/largeprecursorturretdmgbonusrequiredskill.py b/eos/effects/largeprecursorturretdmgbonusrequiredskill.py deleted file mode 100644 index 32ba9bb8b..000000000 --- a/eos/effects/largeprecursorturretdmgbonusrequiredskill.py +++ /dev/null @@ -1,11 +0,0 @@ -# largePrecursorTurretDmgBonusRequiredSkill -# -# Used by: -# Skill: Large Precursor Weapon -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Precursor Weapon"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py b/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py deleted file mode 100644 index e7f214d19..000000000 --- a/eos/effects/largeprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringlargeprojectileturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# largeProjectileTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringLargeProjectileTurret -# -# Used by: -# Implants named like: Eifyr and Co. 'Gunslinger' Large Projectile Turret LP (6 of 6) -# Skill: Large Projectile Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/lightningweapon.py b/eos/effects/lightningweapon.py deleted file mode 100644 index 81987466e..000000000 --- a/eos/effects/lightningweapon.py +++ /dev/null @@ -1,9 +0,0 @@ -# lightningWeapon -# -# Used by: -# Structure Module: Standup Arcing Vorton Projector I -type = 'active' - - -def handler(fit, module, context): - pass diff --git a/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py b/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py deleted file mode 100644 index ac11238db..000000000 --- a/eos/effects/longrangetargetingmaxtargetrangebonuspostpercentmaxtargetrangelocationshipgroupelectronic.py +++ /dev/null @@ -1,11 +0,0 @@ -# longRangeTargetingMaxTargetRangeBonusPostPercentMaxTargetRangeLocationShipGroupElectronic -# -# Used by: -# Implants named like: Zainou 'Gypsy' Long Range Targeting LT (6 of 6) -# Skill: Long Range Targeting -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("maxTargetRange", container.getModifiedItemAttr("maxTargetRangeBonus") * level) diff --git a/eos/effects/massentanglereffect5.py b/eos/effects/massentanglereffect5.py deleted file mode 100644 index ebeb25f5a..000000000 --- a/eos/effects/massentanglereffect5.py +++ /dev/null @@ -1,17 +0,0 @@ -# massEntanglerEffect5 -# -# Used by: -# Module: Zero-Point Mass Entangler -type = "active" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("warpScrambleStrength")) - fit.ship.boostItemAttr("mass", src.getModifiedItemAttr("massBonusPercentage"), stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", - src.getModifiedItemAttr("speedFactorBonus"), stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedBoostFactor", - src.getModifiedItemAttr("speedBoostFactorBonus")) - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), "activationBlocked", - src.getModifiedItemAttr("activationBlockedStrenght")) - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("maxVelocityBonus"), stackingPenalties=True) diff --git a/eos/effects/massreductionbonuspassive.py b/eos/effects/massreductionbonuspassive.py deleted file mode 100644 index abc1dddde..000000000 --- a/eos/effects/massreductionbonuspassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# massReductionBonusPassive -# -# Used by: -# Modules from group: Rig Anchor (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("mass", module.getModifiedItemAttr("massBonusPercentage"), stackingPenalties=True) diff --git a/eos/effects/maxrangebonuseffecthybrids.py b/eos/effects/maxrangebonuseffecthybrids.py deleted file mode 100644 index 68f035cc6..000000000 --- a/eos/effects/maxrangebonuseffecthybrids.py +++ /dev/null @@ -1,11 +0,0 @@ -# maxRangeBonusEffectHybrids -# -# Used by: -# Modules named like: Hybrid Locus Coordinator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/maxrangebonuseffectlasers.py b/eos/effects/maxrangebonuseffectlasers.py deleted file mode 100644 index 7f4126ad8..000000000 --- a/eos/effects/maxrangebonuseffectlasers.py +++ /dev/null @@ -1,11 +0,0 @@ -# maxRangeBonusEffectLasers -# -# Used by: -# Modules named like: Energy Locus Coordinator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/maxrangebonuseffectprojectiles.py b/eos/effects/maxrangebonuseffectprojectiles.py deleted file mode 100644 index 5f433584c..000000000 --- a/eos/effects/maxrangebonuseffectprojectiles.py +++ /dev/null @@ -1,11 +0,0 @@ -# maxRangeBonusEffectProjectiles -# -# Used by: -# Modules named like: Projectile Locus Coordinator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/maxtargetingrangebonuspostpercentpassive.py b/eos/effects/maxtargetingrangebonuspostpercentpassive.py deleted file mode 100644 index 6a0c0e916..000000000 --- a/eos/effects/maxtargetingrangebonuspostpercentpassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# maxTargetingRangeBonusPostPercentPassive -# -# Used by: -# Modules named like: Ionic Field Projector (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/maxtargetrangeaddpassive.py b/eos/effects/maxtargetrangeaddpassive.py deleted file mode 100644 index 2b999329f..000000000 --- a/eos/effects/maxtargetrangeaddpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# maxTargetRangeAddPassive -# -# Used by: -# Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRange")) diff --git a/eos/effects/maxtargetrangebonus.py b/eos/effects/maxtargetrangebonus.py deleted file mode 100644 index 96731483b..000000000 --- a/eos/effects/maxtargetrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# maxTargetRangeBonus -# -# Used by: -# Modules from group: Warp Core Stabilizer (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/mechanichullhpbonuspostpercenthpship.py b/eos/effects/mechanichullhpbonuspostpercenthpship.py deleted file mode 100644 index 3f01c5422..000000000 --- a/eos/effects/mechanichullhpbonuspostpercenthpship.py +++ /dev/null @@ -1,12 +0,0 @@ -# mechanicHullHpBonusPostPercentHpShip -# -# Used by: -# Implants named like: Inherent Implants 'Noble' Mechanic MC (6 of 6) -# Modules named like: Transverse Bulkhead (8 of 8) -# Skill: Mechanics -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("hp", container.getModifiedItemAttr("hullHpBonus") * level) diff --git a/eos/effects/mediumdisintegratorskilldmgbonus.py b/eos/effects/mediumdisintegratorskilldmgbonus.py deleted file mode 100644 index f7a2cc10e..000000000 --- a/eos/effects/mediumdisintegratorskilldmgbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# mediumDisintegratorSkillDmgBonus -# -# Used by: -# Skill: Medium Disintegrator Specialization -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Disintegrator Specialization"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py b/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py deleted file mode 100644 index c70854c90..000000000 --- a/eos/effects/mediumenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumenergyturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# mediumEnergyTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringMediumEnergyTurret -# -# Used by: -# Implants named like: Inherent Implants 'Lancer' Medium Energy Turret ME (6 of 6) -# Skill: Medium Energy Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py b/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py deleted file mode 100644 index e64a0d35b..000000000 --- a/eos/effects/mediumhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumhybridturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# mediumHybridTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringMediumHybridTurret -# -# Used by: -# Implants named like: Zainou 'Deadeye' Medium Hybrid Turret MH (6 of 6) -# Skill: Medium Hybrid Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/mediumprecursorturretdmgbonusrequiredskill.py b/eos/effects/mediumprecursorturretdmgbonusrequiredskill.py deleted file mode 100644 index c35fcda31..000000000 --- a/eos/effects/mediumprecursorturretdmgbonusrequiredskill.py +++ /dev/null @@ -1,11 +0,0 @@ -# mediumPrecursorTurretDmgBonusRequiredSkill -# -# Used by: -# Skill: Medium Precursor Weapon -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py b/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py deleted file mode 100644 index 8bd3dec22..000000000 --- a/eos/effects/mediumprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringmediumprojectileturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# mediumProjectileTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringMediumProjectileTurret -# -# Used by: -# Implants named like: Eifyr and Co. 'Gunslinger' Medium Projectile Turret MP (6 of 6) -# Skill: Medium Projectile Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/mediumremoterepfittingadjustment.py b/eos/effects/mediumremoterepfittingadjustment.py deleted file mode 100644 index b5d4c577c..000000000 --- a/eos/effects/mediumremoterepfittingadjustment.py +++ /dev/null @@ -1,13 +0,0 @@ -# mediumRemoteRepFittingAdjustment -# -# Used by: -# Variations of module: Medium Remote Armor Repairer I (12 of 12) -# Variations of module: Medium Remote Shield Booster I (11 of 11) -# Module: Medium Ancillary Remote Armor Repairer -# Module: Medium Ancillary Remote Shield Booster -type = "passive" - - -def handler(fit, module, context): - module.multiplyItemAttr("power", module.getModifiedItemAttr("mediumRemoteRepFittingMultiplier")) - module.multiplyItemAttr("cpu", module.getModifiedItemAttr("mediumRemoteRepFittingMultiplier")) diff --git a/eos/effects/mercoxitcrystalbonus.py b/eos/effects/mercoxitcrystalbonus.py deleted file mode 100644 index 97a255397..000000000 --- a/eos/effects/mercoxitcrystalbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# mercoxitCrystalBonus -# -# Used by: -# Module: Medium Mercoxit Mining Crystal Optimization I -type = "passive" -runTime = "early" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Mercoxit Processing"), - "specialisationAsteroidYieldMultiplier", - module.getModifiedItemAttr("miningAmountBonus")) diff --git a/eos/effects/microjumpdrive.py b/eos/effects/microjumpdrive.py deleted file mode 100644 index c8797d7d0..000000000 --- a/eos/effects/microjumpdrive.py +++ /dev/null @@ -1,9 +0,0 @@ -# microJumpDrive -# -# Used by: -# Modules from group: Micro Jump Drive (2 of 2) -type = "active" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonusPercent")) diff --git a/eos/effects/microjumpportaldrive.py b/eos/effects/microjumpportaldrive.py deleted file mode 100644 index 0b96a9743..000000000 --- a/eos/effects/microjumpportaldrive.py +++ /dev/null @@ -1,10 +0,0 @@ -# microJumpPortalDrive -# -# Used by: -# Module: Micro Jump Field Generator -type = "active" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonusPercent"), - stackingPenalties=True) diff --git a/eos/effects/minercpuusagemultiplypercent2.py b/eos/effects/minercpuusagemultiplypercent2.py deleted file mode 100644 index 7cba56603..000000000 --- a/eos/effects/minercpuusagemultiplypercent2.py +++ /dev/null @@ -1,11 +0,0 @@ -# minerCpuUsageMultiplyPercent2 -# -# Used by: -# Variations of module: Mining Laser Upgrade I (5 of 5) -# Module: Frostline 'Omnivore' Harvester Upgrade -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "cpu", module.getModifiedItemAttr("cpuPenaltyPercent")) diff --git a/eos/effects/minigamevirusstrengthbonus.py b/eos/effects/minigamevirusstrengthbonus.py deleted file mode 100644 index 0e60325db..000000000 --- a/eos/effects/minigamevirusstrengthbonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# minigameVirusStrengthBonus -# -# Used by: -# Ships from group: Covert Ops (7 of 8) -# Ships named like: Stratios (2 of 2) -# Subsystems named like: Defensive Covert Reconfiguration (4 of 4) -# Ship: Astero -# Ship: Heron -# Ship: Imicus -# Ship: Magnate -# Ship: Nestor -# Ship: Probe -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemIncrease( - lambda mod: (mod.item.requiresSkill("Hacking") or mod.item.requiresSkill("Archaeology")), - "virusStrength", container.getModifiedItemAttr("virusStrengthBonus") * level) diff --git a/eos/effects/mining.py b/eos/effects/mining.py deleted file mode 100644 index de0c95cac..000000000 --- a/eos/effects/mining.py +++ /dev/null @@ -1,15 +0,0 @@ -# mining -# -# Used by: -# Drones from group: Mining Drone (10 of 10) - -type = "passive" -grouped = True - - -def handler(fit, container, context): - miningDroneAmountPercent = container.getModifiedItemAttr("miningDroneAmountPercent") - if (miningDroneAmountPercent is None) or (miningDroneAmountPercent == 0): - pass - else: - container.multiplyItemAttr("miningAmount", miningDroneAmountPercent / 100) diff --git a/eos/effects/miningclouds.py b/eos/effects/miningclouds.py deleted file mode 100644 index f37896233..000000000 --- a/eos/effects/miningclouds.py +++ /dev/null @@ -1,9 +0,0 @@ -# miningClouds -# -# Used by: -# Modules from group: Gas Cloud Harvester (5 of 5) -type = "active" - - -def handler(fit, module, context): - pass diff --git a/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py b/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py deleted file mode 100644 index 79977637f..000000000 --- a/eos/effects/miningdroneoperationminingamountbonuspostpercentminingdroneamountpercentchar.py +++ /dev/null @@ -1,13 +0,0 @@ -# miningDroneOperationMiningAmountBonusPostPercentMiningDroneAmountPercentChar -# -# Used by: -# Modules named like: Drone Mining Augmentor (8 of 8) -# Skill: Mining Drone Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", - container.getModifiedItemAttr("miningAmountBonus") * level) diff --git a/eos/effects/miningdronespecbonus.py b/eos/effects/miningdronespecbonus.py deleted file mode 100644 index fe8cdff5a..000000000 --- a/eos/effects/miningdronespecbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# miningDroneSpecBonus -# -# Used by: -# Skill: Mining Drone Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Drone Specialization"), "miningAmount", - src.getModifiedItemAttr("miningAmountBonus") * lvl) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Drone Specialization"), "maxVelocity", - src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/miningdurationmultiplieronline.py b/eos/effects/miningdurationmultiplieronline.py deleted file mode 100644 index 3d4cad5a5..000000000 --- a/eos/effects/miningdurationmultiplieronline.py +++ /dev/null @@ -1,10 +0,0 @@ -# miningDurationMultiplierOnline -# -# Used by: -# Module: Frostline 'Omnivore' Harvester Upgrade -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mining Laser", - "duration", module.getModifiedItemAttr("miningDurationMultiplier")) diff --git a/eos/effects/miningforemanburstbonusics2.py b/eos/effects/miningforemanburstbonusics2.py deleted file mode 100644 index 0e1140e0e..000000000 --- a/eos/effects/miningforemanburstbonusics2.py +++ /dev/null @@ -1,18 +0,0 @@ -# miningForemanBurstBonusICS2 -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff4Value", - src.getModifiedItemAttr("shipBonusICS2"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff1Value", - src.getModifiedItemAttr("shipBonusICS2"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "buffDuration", - src.getModifiedItemAttr("shipBonusICS2"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff3Value", - src.getModifiedItemAttr("shipBonusICS2"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff2Value", - src.getModifiedItemAttr("shipBonusICS2"), skill="Industrial Command Ships") diff --git a/eos/effects/miningforemanburstbonusorecapital2.py b/eos/effects/miningforemanburstbonusorecapital2.py deleted file mode 100644 index 29d55819e..000000000 --- a/eos/effects/miningforemanburstbonusorecapital2.py +++ /dev/null @@ -1,18 +0,0 @@ -# miningForemanBurstBonusORECapital2 -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff1Value", - src.getModifiedItemAttr("shipBonusORECapital2"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff2Value", - src.getModifiedItemAttr("shipBonusORECapital2"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff4Value", - src.getModifiedItemAttr("shipBonusORECapital2"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff3Value", - src.getModifiedItemAttr("shipBonusORECapital2"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "buffDuration", - src.getModifiedItemAttr("shipBonusORECapital2"), skill="Capital Industrial Ships") diff --git a/eos/effects/miningforemandurationbonus.py b/eos/effects/miningforemandurationbonus.py deleted file mode 100644 index 14a290d2e..000000000 --- a/eos/effects/miningforemandurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# miningForemanDurationBonus -# -# Used by: -# Skill: Mining Foreman -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/miningforemanmindlink.py b/eos/effects/miningforemanmindlink.py deleted file mode 100644 index ad4339f67..000000000 --- a/eos/effects/miningforemanmindlink.py +++ /dev/null @@ -1,19 +0,0 @@ -# miningForemanMindlink -# -# Used by: -# Implant: Mining Foreman Mindlink -# Implant: ORE Mining Director Mindlink -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "buffDuration", - src.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/miningforemanstrengthbonus.py b/eos/effects/miningforemanstrengthbonus.py deleted file mode 100644 index e7af57839..000000000 --- a/eos/effects/miningforemanstrengthbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# miningForemanStrengthBonus -# -# Used by: -# Skill: Mining Director -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff4Value", src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff3Value", src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff2Value", src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Foreman"), "warfareBuff1Value", src.getModifiedItemAttr("commandStrengthBonus") * lvl) diff --git a/eos/effects/miningfrigatebonusiceharvestingcycletime2.py b/eos/effects/miningfrigatebonusiceharvestingcycletime2.py deleted file mode 100644 index 094e01713..000000000 --- a/eos/effects/miningfrigatebonusiceharvestingcycletime2.py +++ /dev/null @@ -1,10 +0,0 @@ -# miningFrigateBonusIceHarvestingCycleTime2 -# -# Used by: -# Ship: Endurance -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", - src.getModifiedItemAttr("shipBonusOREfrig2"), skill="Mining Frigate") diff --git a/eos/effects/mininginfomultiplier.py b/eos/effects/mininginfomultiplier.py deleted file mode 100644 index c8a6c04f3..000000000 --- a/eos/effects/mininginfomultiplier.py +++ /dev/null @@ -1,12 +0,0 @@ -# miningInfoMultiplier -# -# Used by: -# Charges from group: Mining Crystal (40 of 40) -# Charges named like: Mining Crystal (42 of 42) -type = "passive" - - -def handler(fit, module, context): - module.multiplyItemAttr("specialtyMiningAmount", - module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) - # module.multiplyItemAttr("miningAmount", module.getModifiedChargeAttr("specialisationAsteroidYieldMultiplier")) diff --git a/eos/effects/mininglaser.py b/eos/effects/mininglaser.py deleted file mode 100644 index 1351132dd..000000000 --- a/eos/effects/mininglaser.py +++ /dev/null @@ -1,13 +0,0 @@ -# miningLaser -# -# Used by: -# Modules from group: Frequency Mining Laser (3 of 3) -# Modules from group: Mining Laser (15 of 15) -# Modules from group: Strip Miner (5 of 5) -# Module: Citizen Miner -type = 'active' - - -def handler(fit, module, context): - # Set reload time to 1 second - module.reloadTime = 1000 diff --git a/eos/effects/mininglaserrangebonus.py b/eos/effects/mininglaserrangebonus.py deleted file mode 100644 index 163574ba9..000000000 --- a/eos/effects/mininglaserrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# miningLaserRangeBonus -# -# Used by: -# Implants named like: grade Harvest (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mining Laser", - "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py b/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py deleted file mode 100644 index f5afa70b6..000000000 --- a/eos/effects/miningupgradecpupenaltyreductionmodulesrequiringminingupgradepercent.py +++ /dev/null @@ -1,13 +0,0 @@ -# miningUpgradeCPUPenaltyReductionModulesRequiringMiningUpgradePercent -# -# Used by: -# Implants named like: Inherent Implants 'Highwall' Mining Upgrades MU (3 of 3) -# Skill: Mining Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining Upgrades"), - "cpuPenaltyPercent", - container.getModifiedItemAttr("miningUpgradeCPUReductionBonus") * level) diff --git a/eos/effects/miningyieldmultiplypassive.py b/eos/effects/miningyieldmultiplypassive.py deleted file mode 100644 index 13b45eb39..000000000 --- a/eos/effects/miningyieldmultiplypassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# miningYieldMultiplyPassive -# -# Used by: -# Variations of ship: Venture (3 of 3) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("miningAmountMultiplier")) diff --git a/eos/effects/miningyieldmultiplypercent.py b/eos/effects/miningyieldmultiplypercent.py deleted file mode 100644 index a02b4333b..000000000 --- a/eos/effects/miningyieldmultiplypercent.py +++ /dev/null @@ -1,11 +0,0 @@ -# miningYieldMultiplyPercent -# -# Used by: -# Variations of module: Mining Laser Upgrade I (5 of 5) -# Module: Frostline 'Omnivore' Harvester Upgrade -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("miningAmountBonus")) diff --git a/eos/effects/minmatarshipewtargetpaintermc1.py b/eos/effects/minmatarshipewtargetpaintermc1.py deleted file mode 100644 index e1f9fcb2d..000000000 --- a/eos/effects/minmatarshipewtargetpaintermc1.py +++ /dev/null @@ -1,12 +0,0 @@ -# minmatarShipEwTargetPainterMC1 -# -# Used by: -# Ship: Bellicose -# Ship: Rapier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMC"), - skill="Minmatar Cruiser") diff --git a/eos/effects/minmatarshipewtargetpaintermc2.py b/eos/effects/minmatarshipewtargetpaintermc2.py deleted file mode 100644 index cb80fba62..000000000 --- a/eos/effects/minmatarshipewtargetpaintermc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# minmatarShipEwTargetPainterMC2 -# -# Used by: -# Ship: Huginn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/minmatarshipewtargetpaintermf2.py b/eos/effects/minmatarshipewtargetpaintermf2.py deleted file mode 100644 index 0140a5d57..000000000 --- a/eos/effects/minmatarshipewtargetpaintermf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# minmatarShipEwTargetPainterMF2 -# -# Used by: -# Ship: Hyena -# Ship: Vigil -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMF2"), - skill="Minmatar Frigate") diff --git a/eos/effects/minmatarshipewtargetpainterrookie.py b/eos/effects/minmatarshipewtargetpainterrookie.py deleted file mode 100644 index 92b3330dc..000000000 --- a/eos/effects/minmatarshipewtargetpainterrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# minmatarShipEwTargetPainterRookie -# -# Used by: -# Ship: Reaper -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", - "signatureRadiusBonus", ship.getModifiedItemAttr("rookieTargetPainterStrengthBonus")) diff --git a/eos/effects/missileaoecloudsizebonusonline.py b/eos/effects/missileaoecloudsizebonusonline.py deleted file mode 100644 index bbc42b61b..000000000 --- a/eos/effects/missileaoecloudsizebonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# missileAOECloudSizeBonusOnline -# -# Used by: -# Modules from group: Missile Guidance Enhancer (3 of 3) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeCloudSize", module.getModifiedItemAttr("aoeCloudSizeBonus"), - stackingPenalties=True) diff --git a/eos/effects/missileaoevelocitybonusonline.py b/eos/effects/missileaoevelocitybonusonline.py deleted file mode 100644 index 03ddd6715..000000000 --- a/eos/effects/missileaoevelocitybonusonline.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileAOEVelocityBonusOnline -# -# Used by: -# Modules from group: Missile Guidance Enhancer (3 of 3) -# Module: ML-EKP 'Polybolos' Ballistic Control System -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeVelocity", module.getModifiedItemAttr("aoeVelocityBonus"), - stackingPenalties=True) diff --git a/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py b/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py deleted file mode 100644 index e7356d260..000000000 --- a/eos/effects/missilebombardmentmaxflighttimebonuspostpercentexplosiondelayownercharmodulesrequiringmissilelauncheroperation.py +++ /dev/null @@ -1,16 +0,0 @@ -# missileBombardmentMaxFlightTimeBonusPostPercentExplosionDelayOwnerCharModulesRequiringMissileLauncherOperation -# -# Used by: -# Implants named like: Zainou 'Deadeye' Missile Bombardment MB (6 of 6) -# Modules named like: Rocket Fuel Cache Partition (8 of 8) -# Implant: Antipharmakon Toxot -# Skill: Missile Bombardment -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalized = False if "skill" in context or "implant" in context or "booster" in context else True - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosionDelay", container.getModifiedItemAttr("maxFlightTimeBonus") * level, - stackingPenalties=penalized) diff --git a/eos/effects/missiledmgbonus.py b/eos/effects/missiledmgbonus.py deleted file mode 100644 index 4fca60500..000000000 --- a/eos/effects/missiledmgbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# missileDMGBonus -# -# Used by: -# Modules from group: Ballistic Control system (22 of 22) -type = "passive" - - -def handler(fit, container, context): - for dmgType in ("em", "kinetic", "explosive", "thermal"): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "%sDamage" % dmgType, - container.getModifiedItemAttr("missileDamageMultiplierBonus"), - stackingPenalties=True) diff --git a/eos/effects/missiledmgbonuspassive.py b/eos/effects/missiledmgbonuspassive.py deleted file mode 100644 index 4934dc7cf..000000000 --- a/eos/effects/missiledmgbonuspassive.py +++ /dev/null @@ -1,13 +0,0 @@ -# missileDMGBonusPassive -# -# Used by: -# Modules named like: Warhead Calefaction Catalyst (8 of 8) -type = "passive" - - -def handler(fit, container, context): - for dmgType in ("em", "kinetic", "explosive", "thermal"): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "%sDamage" % dmgType, - container.getModifiedItemAttr("missileDamageMultiplierBonus"), - stackingPenalties=True) diff --git a/eos/effects/missileemdmgbonus.py b/eos/effects/missileemdmgbonus.py deleted file mode 100644 index 4b745afd2..000000000 --- a/eos/effects/missileemdmgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileEMDmgBonus -# -# Used by: -# Skills named like: Missiles (5 of 7) -# Skill: Rockets -# Skill: Torpedoes -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), - "emDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileemdmgbonuscruise3.py b/eos/effects/missileemdmgbonuscruise3.py deleted file mode 100644 index c7f718062..000000000 --- a/eos/effects/missileemdmgbonuscruise3.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileEMDmgBonusCruise3 -# -# Used by: -# Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusham.py b/eos/effects/missileemdmgbonusham.py deleted file mode 100644 index 93b008b9a..000000000 --- a/eos/effects/missileemdmgbonusham.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileEMDmgBonusHAM -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusheavy.py b/eos/effects/missileemdmgbonusheavy.py deleted file mode 100644 index 35a8f634b..000000000 --- a/eos/effects/missileemdmgbonusheavy.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileEMDmgBonusHeavy -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusrocket.py b/eos/effects/missileemdmgbonusrocket.py deleted file mode 100644 index cf4d1e826..000000000 --- a/eos/effects/missileemdmgbonusrocket.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileEMDmgBonusRocket -# -# Used by: -# Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonusstandard.py b/eos/effects/missileemdmgbonusstandard.py deleted file mode 100644 index 82b69159a..000000000 --- a/eos/effects/missileemdmgbonusstandard.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileEMDmgBonusStandard -# -# Used by: -# Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileemdmgbonustorpedo.py b/eos/effects/missileemdmgbonustorpedo.py deleted file mode 100644 index 82b228f3e..000000000 --- a/eos/effects/missileemdmgbonustorpedo.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileEMDmgBonusTorpedo -# -# Used by: -# Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "emDamage", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosiondelaybonusonline.py b/eos/effects/missileexplosiondelaybonusonline.py deleted file mode 100644 index a23f9a2fe..000000000 --- a/eos/effects/missileexplosiondelaybonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# missileExplosionDelayBonusOnline -# -# Used by: -# Modules from group: Missile Guidance Enhancer (3 of 3) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosionDelay", module.getModifiedItemAttr("explosionDelayBonus"), - stackingPenalties=True) diff --git a/eos/effects/missileexplosivedmgbonus.py b/eos/effects/missileexplosivedmgbonus.py deleted file mode 100644 index 6f12347b3..000000000 --- a/eos/effects/missileexplosivedmgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileExplosiveDmgBonus -# -# Used by: -# Skills named like: Missiles (5 of 7) -# Skill: Rockets -# Skill: Torpedoes -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), - "explosiveDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missileexplosivedmgbonuscruise3.py b/eos/effects/missileexplosivedmgbonuscruise3.py deleted file mode 100644 index 861799510..000000000 --- a/eos/effects/missileexplosivedmgbonuscruise3.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileExplosiveDmgBonusCruise3 -# -# Used by: -# Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusham.py b/eos/effects/missileexplosivedmgbonusham.py deleted file mode 100644 index 8000c3df0..000000000 --- a/eos/effects/missileexplosivedmgbonusham.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileExplosiveDmgBonusHAM -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusheavy.py b/eos/effects/missileexplosivedmgbonusheavy.py deleted file mode 100644 index dc68d5aed..000000000 --- a/eos/effects/missileexplosivedmgbonusheavy.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileExplosiveDmgBonusHeavy -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusrocket.py b/eos/effects/missileexplosivedmgbonusrocket.py deleted file mode 100644 index 437d99761..000000000 --- a/eos/effects/missileexplosivedmgbonusrocket.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileExplosiveDmgBonusRocket -# -# Used by: -# Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonusstandard.py b/eos/effects/missileexplosivedmgbonusstandard.py deleted file mode 100644 index 67c75f102..000000000 --- a/eos/effects/missileexplosivedmgbonusstandard.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileExplosiveDmgBonusStandard -# -# Used by: -# Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileexplosivedmgbonustorpedo.py b/eos/effects/missileexplosivedmgbonustorpedo.py deleted file mode 100644 index 9611c2b22..000000000 --- a/eos/effects/missileexplosivedmgbonustorpedo.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileExplosiveDmgBonusTorpedo -# -# Used by: -# Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosiveDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missileguidancecomputerbonus4.py b/eos/effects/missileguidancecomputerbonus4.py deleted file mode 100644 index a276fe2db..000000000 --- a/eos/effects/missileguidancecomputerbonus4.py +++ /dev/null @@ -1,17 +0,0 @@ -# missileGuidanceComputerBonus4 -# -# Used by: -# Modules from group: Missile Guidance Computer (3 of 3) -type = "active" - - -def handler(fit, container, 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, container.getModifiedItemAttr(srcAttr), - stackingPenalties=True) diff --git a/eos/effects/missilekineticdmgbonus2.py b/eos/effects/missilekineticdmgbonus2.py deleted file mode 100644 index 4de267555..000000000 --- a/eos/effects/missilekineticdmgbonus2.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileKineticDmgBonus2 -# -# Used by: -# Skills named like: Missiles (5 of 7) -# Skill: Rockets -# Skill: Torpedoes -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), - "kineticDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missilekineticdmgbonuscruise3.py b/eos/effects/missilekineticdmgbonuscruise3.py deleted file mode 100644 index 7ce36c44b..000000000 --- a/eos/effects/missilekineticdmgbonuscruise3.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileKineticDmgBonusCruise3 -# -# Used by: -# Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusham.py b/eos/effects/missilekineticdmgbonusham.py deleted file mode 100644 index 4a01de0bb..000000000 --- a/eos/effects/missilekineticdmgbonusham.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileKineticDmgBonusHAM -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusheavy.py b/eos/effects/missilekineticdmgbonusheavy.py deleted file mode 100644 index 56296feb1..000000000 --- a/eos/effects/missilekineticdmgbonusheavy.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileKineticDmgBonusHeavy -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusrocket.py b/eos/effects/missilekineticdmgbonusrocket.py deleted file mode 100644 index ab04fedf1..000000000 --- a/eos/effects/missilekineticdmgbonusrocket.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileKineticDmgBonusRocket -# -# Used by: -# Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonusstandard.py b/eos/effects/missilekineticdmgbonusstandard.py deleted file mode 100644 index e8f3714fa..000000000 --- a/eos/effects/missilekineticdmgbonusstandard.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileKineticDmgBonusStandard -# -# Used by: -# Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilekineticdmgbonustorpedo.py b/eos/effects/missilekineticdmgbonustorpedo.py deleted file mode 100644 index de8d92fb6..000000000 --- a/eos/effects/missilekineticdmgbonustorpedo.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileKineticDmgBonusTorpedo -# -# Used by: -# Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "kineticDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilelauncherspeedmultiplier.py b/eos/effects/missilelauncherspeedmultiplier.py deleted file mode 100644 index 2655e614e..000000000 --- a/eos/effects/missilelauncherspeedmultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# missileLauncherSpeedMultiplier -# -# Used by: -# Modules from group: Ballistic Control system (22 of 22) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/missilelauncherspeedmultiplierpassive.py b/eos/effects/missilelauncherspeedmultiplierpassive.py deleted file mode 100644 index 6c3c147bb..000000000 --- a/eos/effects/missilelauncherspeedmultiplierpassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# missileLauncherSpeedMultiplierPassive -# -# Used by: -# Modules named like: Bay Loading Accelerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/missileskillaoecloudsizebonus.py b/eos/effects/missileskillaoecloudsizebonus.py deleted file mode 100644 index 0e3bfdddf..000000000 --- a/eos/effects/missileskillaoecloudsizebonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# missileSkillAoeCloudSizeBonus -# -# Used by: -# Implants named like: Zainou 'Deadeye' Guided Missile Precision GP (6 of 6) -# Modules named like: Warhead Rigor Catalyst (8 of 8) -# Skill: Guided Missile Precision -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalize = False if "skill" in context or "implant" in context else True - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeCloudSize", container.getModifiedItemAttr("aoeCloudSizeBonus") * level, - stackingPenalties=penalize) diff --git a/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py b/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py deleted file mode 100644 index 9593201fc..000000000 --- a/eos/effects/missileskillaoecloudsizebonusallincludingcapitals.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileSkillAoeCloudSizeBonusAllIncludingCapitals -# -# Used by: -# Implants named like: Crash Booster (4 of 4) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeCloudSize", implant.getModifiedItemAttr("aoeCloudSizeBonus")) diff --git a/eos/effects/missileskillaoevelocitybonus.py b/eos/effects/missileskillaoevelocitybonus.py deleted file mode 100644 index 28fdae111..000000000 --- a/eos/effects/missileskillaoevelocitybonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# missileSkillAoeVelocityBonus -# -# Used by: -# Implants named like: Zainou 'Deadeye' Target Navigation Prediction TN (6 of 6) -# Modules named like: Warhead Flare Catalyst (8 of 8) -# Skill: Target Navigation Prediction -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalize = False if "skill" in context or "implant" in context else True - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeVelocity", container.getModifiedItemAttr("aoeVelocityBonus") * level, - stackingPenalties=penalize) diff --git a/eos/effects/missileskillfofaoecloudsizebonus.py b/eos/effects/missileskillfofaoecloudsizebonus.py deleted file mode 100644 index a4cb02f67..000000000 --- a/eos/effects/missileskillfofaoecloudsizebonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# missileSkillFoFAoeCloudSizeBonus -# -# Used by: -# Implants named like: Zainou 'Snapshot' Auto Targeting Explosion Radius FR (6 of 6) -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("FoF Missiles"), - "aoeCloudSize", container.getModifiedItemAttr("aoeCloudSizeBonus") * level) diff --git a/eos/effects/missileskillmissileprojectilevelocitybonus.py b/eos/effects/missileskillmissileprojectilevelocitybonus.py deleted file mode 100644 index 3c7cee775..000000000 --- a/eos/effects/missileskillmissileprojectilevelocitybonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# missileSkillMissileProjectileVelocityBonus -# -# Used by: -# Implants named like: Zainou 'Deadeye' Missile Projection MP (6 of 6) -# Modules named like: Hydraulic Bay Thrusters (8 of 8) -# Skill: Missile Projection -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalized = False if "skill" in context or "implant" in context else True - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", container.getModifiedItemAttr("speedFactor") * level, - stackingPenalties=penalized) diff --git a/eos/effects/missileskillrapidlauncherrof.py b/eos/effects/missileskillrapidlauncherrof.py deleted file mode 100644 index 9cdc9a0f6..000000000 --- a/eos/effects/missileskillrapidlauncherrof.py +++ /dev/null @@ -1,15 +0,0 @@ -# missileSkillRapidLauncherRoF -# -# Used by: -# Implants named like: Zainou 'Deadeye' Rapid Launch RL (6 of 6) -# Implant: Standard Cerebral Accelerator -# Implant: Whelan Machorin's Ballistic Smartlink -# Skill: Missile Launcher Operation -# Skill: Rapid Launch -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", container.getModifiedItemAttr("rofBonus") * level) diff --git a/eos/effects/missileskillwarheadupgradesemdamagebonus.py b/eos/effects/missileskillwarheadupgradesemdamagebonus.py deleted file mode 100644 index 63e95f67f..000000000 --- a/eos/effects/missileskillwarheadupgradesemdamagebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileSkillWarheadUpgradesEmDamageBonus -# -# Used by: -# Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) -# Skill: Warhead Upgrades -type = "passive" - - -def handler(fit, src, context): - mod = src.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "emDamage", src.getModifiedItemAttr("damageMultiplierBonus") * mod) diff --git a/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py b/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py deleted file mode 100644 index 6a6228e8e..000000000 --- a/eos/effects/missileskillwarheadupgradesexplosivedamagebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileSkillWarheadUpgradesExplosiveDamageBonus -# -# Used by: -# Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) -# Skill: Warhead Upgrades -type = "passive" - - -def handler(fit, src, context): - mod = src.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", src.getModifiedItemAttr("damageMultiplierBonus") * mod) diff --git a/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py b/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py deleted file mode 100644 index 8b25142a8..000000000 --- a/eos/effects/missileskillwarheadupgradeskineticdamagebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileSkillWarheadUpgradesKineticDamageBonus -# -# Used by: -# Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) -# Skill: Warhead Upgrades -type = "passive" - - -def handler(fit, src, context): - mod = src.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", src.getModifiedItemAttr("damageMultiplierBonus") * mod) diff --git a/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py b/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py deleted file mode 100644 index 737e5d20d..000000000 --- a/eos/effects/missileskillwarheadupgradesthermaldamagebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileSkillWarheadUpgradesThermalDamageBonus -# -# Used by: -# Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) -# Skill: Warhead Upgrades -type = "passive" - - -def handler(fit, src, context): - mod = src.level if "skill" in context else 1 - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", src.getModifiedItemAttr("damageMultiplierBonus") * mod) diff --git a/eos/effects/missilethermaldmgbonus.py b/eos/effects/missilethermaldmgbonus.py deleted file mode 100644 index 162e5beb6..000000000 --- a/eos/effects/missilethermaldmgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# missileThermalDmgBonus -# -# Used by: -# Skills named like: Missiles (5 of 7) -# Skill: Rockets -# Skill: Torpedoes -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill(skill), - "thermalDamage", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/missilethermaldmgbonuscruise3.py b/eos/effects/missilethermaldmgbonuscruise3.py deleted file mode 100644 index 47bd9feeb..000000000 --- a/eos/effects/missilethermaldmgbonuscruise3.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileThermalDmgBonusCruise3 -# -# Used by: -# Implants named like: Zainou 'Snapshot' Cruise Missiles CM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusham.py b/eos/effects/missilethermaldmgbonusham.py deleted file mode 100644 index 13e2d3398..000000000 --- a/eos/effects/missilethermaldmgbonusham.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileThermalDmgBonusHAM -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Assault Missiles AM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusheavy.py b/eos/effects/missilethermaldmgbonusheavy.py deleted file mode 100644 index 5e4087e84..000000000 --- a/eos/effects/missilethermaldmgbonusheavy.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileThermalDmgBonusHeavy -# -# Used by: -# Implants named like: Zainou 'Snapshot' Heavy Missiles HM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusrocket.py b/eos/effects/missilethermaldmgbonusrocket.py deleted file mode 100644 index 20694a704..000000000 --- a/eos/effects/missilethermaldmgbonusrocket.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileThermalDmgBonusRocket -# -# Used by: -# Implants named like: Zainou 'Snapshot' Rockets RD (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonusstandard.py b/eos/effects/missilethermaldmgbonusstandard.py deleted file mode 100644 index 49a8006e7..000000000 --- a/eos/effects/missilethermaldmgbonusstandard.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileThermalDmgBonusStandard -# -# Used by: -# Implants named like: Zainou 'Snapshot' Light Missiles LM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilethermaldmgbonustorpedo.py b/eos/effects/missilethermaldmgbonustorpedo.py deleted file mode 100644 index 22293eb06..000000000 --- a/eos/effects/missilethermaldmgbonustorpedo.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileThermalDmgBonusTorpedo -# -# Used by: -# Implants named like: Zainou 'Snapshot' Torpedoes TD (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "thermalDamage", container.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/missilevelocitybonusdefender.py b/eos/effects/missilevelocitybonusdefender.py deleted file mode 100644 index 350eabe4d..000000000 --- a/eos/effects/missilevelocitybonusdefender.py +++ /dev/null @@ -1,10 +0,0 @@ -# missileVelocityBonusDefender -# -# Used by: -# Implants named like: Zainou 'Snapshot' Defender Missiles DM (6 of 6) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Defender Missiles"), - "maxVelocity", container.getModifiedItemAttr("missileVelocityBonus")) diff --git a/eos/effects/missilevelocitybonusonline.py b/eos/effects/missilevelocitybonusonline.py deleted file mode 100644 index f04d47292..000000000 --- a/eos/effects/missilevelocitybonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# missileVelocityBonusOnline -# -# Used by: -# Modules from group: Missile Guidance Enhancer (3 of 3) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", module.getModifiedItemAttr("missileVelocityBonus"), - stackingPenalties=True) diff --git a/eos/effects/modeagilitypostdiv.py b/eos/effects/modeagilitypostdiv.py deleted file mode 100644 index 485100a7a..000000000 --- a/eos/effects/modeagilitypostdiv.py +++ /dev/null @@ -1,14 +0,0 @@ -# modeAgilityPostDiv -# -# Used by: -# Modules named like: Propulsion Mode (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr( - "agility", - 1 / module.getModifiedItemAttr("modeAgilityPostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/modearmorrepdurationpostdiv.py b/eos/effects/modearmorrepdurationpostdiv.py deleted file mode 100644 index 58f61b557..000000000 --- a/eos/effects/modearmorrepdurationpostdiv.py +++ /dev/null @@ -1,13 +0,0 @@ -# modeArmorRepDurationPostDiv -# -# Used by: -# Module: Hecate Defense Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("Repair Systems"), - "duration", - 1 / module.getModifiedItemAttr("modeArmorRepDurationPostDiv") - ) diff --git a/eos/effects/modearmorresonancepostdiv.py b/eos/effects/modearmorresonancepostdiv.py deleted file mode 100644 index f6a744c4d..000000000 --- a/eos/effects/modearmorresonancepostdiv.py +++ /dev/null @@ -1,20 +0,0 @@ -# modeArmorResonancePostDiv -# -# Used by: -# Modules named like: Defense Mode (3 of 4) -type = "passive" - - -def handler(fit, module, context): - for srcResType, tgtResType in ( - ("Em", "Em"), - ("Explosive", "Explosive"), - ("Kinetic", "Kinetic"), - ("Thermic", "Thermal") - ): - fit.ship.multiplyItemAttr( - "armor{0}DamageResonance".format(tgtResType), - 1 / module.getModifiedItemAttr("mode{0}ResistancePostDiv".format(srcResType)), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/modedamptdresistspostdiv.py b/eos/effects/modedamptdresistspostdiv.py deleted file mode 100644 index 891b84a82..000000000 --- a/eos/effects/modedamptdresistspostdiv.py +++ /dev/null @@ -1,10 +0,0 @@ -# modeDampTDResistsPostDiv -# -# Used by: -# Modules named like: Sharpshooter Mode (4 of 4) -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/modehullresonancepostdiv.py b/eos/effects/modehullresonancepostdiv.py deleted file mode 100644 index ae13c4b7d..000000000 --- a/eos/effects/modehullresonancepostdiv.py +++ /dev/null @@ -1,18 +0,0 @@ -# modeHullResonancePostDiv -# -# Used by: -# Module: Hecate Defense Mode -type = "passive" - - -def handler(fit, module, context): - for srcResType, tgtResType in ( - ("Em", "em"), - ("Explosive", "explosive"), - ("Kinetic", "kinetic"), - ("Thermic", "thermal") - ): - fit.ship.multiplyItemAttr( - "{0}DamageResonance".format(tgtResType), - 1 / module.getModifiedItemAttr("mode{0}ResistancePostDiv".format(srcResType)) - ) diff --git a/eos/effects/modemwdandabboostpostdiv.py b/eos/effects/modemwdandabboostpostdiv.py deleted file mode 100644 index fdc4a67d3..000000000 --- a/eos/effects/modemwdandabboostpostdiv.py +++ /dev/null @@ -1,16 +0,0 @@ -# modeMWDandABBoostPostDiv -# -# Used by: -# Module: Confessor Propulsion Mode -# Module: Svipul Propulsion Mode -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/modemwdboostpostdiv.py b/eos/effects/modemwdboostpostdiv.py deleted file mode 100644 index ad9ddf55e..000000000 --- a/eos/effects/modemwdboostpostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# modeMWDBoostPostDiv -# -# Used by: -# Module: Hecate Propulsion Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "speedFactor", - 1 / module.getModifiedItemAttr("modeMWDVelocityPostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/modemwdcappostdiv.py b/eos/effects/modemwdcappostdiv.py deleted file mode 100644 index 6d16ea720..000000000 --- a/eos/effects/modemwdcappostdiv.py +++ /dev/null @@ -1,13 +0,0 @@ -# modeMWDCapPostDiv -# -# Used by: -# Module: Hecate Propulsion Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "capacitorNeed", - 1 / module.getModifiedItemAttr("modeMWDCapPostDiv") - ) diff --git a/eos/effects/modemwdsigradiuspostdiv.py b/eos/effects/modemwdsigradiuspostdiv.py deleted file mode 100644 index f1aeca8eb..000000000 --- a/eos/effects/modemwdsigradiuspostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# modeMWDSigRadiusPostDiv -# -# Used by: -# Module: Svipul Defense Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", - 1 / module.getModifiedItemAttr("modeMWDSigPenaltyPostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/modeshieldresonancepostdiv.py b/eos/effects/modeshieldresonancepostdiv.py deleted file mode 100644 index 7213168b0..000000000 --- a/eos/effects/modeshieldresonancepostdiv.py +++ /dev/null @@ -1,21 +0,0 @@ -# modeShieldResonancePostDiv -# -# Used by: -# Module: Jackdaw Defense Mode -# Module: Svipul Defense Mode -type = "passive" - - -def handler(fit, module, context): - for srcResType, tgtResType in ( - ("Em", "Em"), - ("Explosive", "Explosive"), - ("Kinetic", "Kinetic"), - ("Thermic", "Thermal") - ): - fit.ship.multiplyItemAttr( - "shield{0}DamageResonance".format(tgtResType), - 1 / module.getModifiedItemAttr("mode{0}ResistancePostDiv".format(srcResType)), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/modesigradiuspostdiv.py b/eos/effects/modesigradiuspostdiv.py deleted file mode 100644 index 7d3b69001..000000000 --- a/eos/effects/modesigradiuspostdiv.py +++ /dev/null @@ -1,11 +0,0 @@ -# modeSigRadiusPostDiv -# -# Used by: -# Module: Confessor Defense Mode -# Module: Jackdaw Defense Mode -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("signatureRadius", 1 / module.getModifiedItemAttr("modeSignatureRadiusPostDiv"), - stackingPenalties=True, penaltyGroup="postDiv") diff --git a/eos/effects/modevelocitypostdiv.py b/eos/effects/modevelocitypostdiv.py deleted file mode 100644 index 7a563dcef..000000000 --- a/eos/effects/modevelocitypostdiv.py +++ /dev/null @@ -1,14 +0,0 @@ -# modeVelocityPostDiv -# -# Used by: -# Module: Jackdaw Propulsion Mode -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr( - "maxVelocity", - 1 / module.getModifiedItemAttr("modeVelocityPostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/modifyactivearmorresonancepostpercent.py b/eos/effects/modifyactivearmorresonancepostpercent.py deleted file mode 100644 index 6a6a9e571..000000000 --- a/eos/effects/modifyactivearmorresonancepostpercent.py +++ /dev/null @@ -1,13 +0,0 @@ -# modifyActiveArmorResonancePostPercent -# -# Used by: -# Modules from group: Armor Hardener (156 of 156) -# Modules from group: Flex Armor Hardener (4 of 4) -type = "active" - - -def handler(fit, module, context): - for damageType in ("kinetic", "thermal", "explosive", "em"): - fit.ship.boostItemAttr("armor%sDamageResonance" % damageType.capitalize(), - module.getModifiedItemAttr("%sDamageResistanceBonus" % damageType), - stackingPenalties=True) diff --git a/eos/effects/modifyactiveshieldresonancepostpercent.py b/eos/effects/modifyactiveshieldresonancepostpercent.py deleted file mode 100644 index 04c2edac3..000000000 --- a/eos/effects/modifyactiveshieldresonancepostpercent.py +++ /dev/null @@ -1,13 +0,0 @@ -# modifyActiveShieldResonancePostPercent -# -# Used by: -# Modules from group: Flex Shield Hardener (5 of 5) -# Modules from group: Shield Hardener (97 of 97) -type = "active" - - -def handler(fit, module, context): - for damageType in ("kinetic", "thermal", "explosive", "em"): - fit.ship.boostItemAttr("shield" + damageType.capitalize() + "DamageResonance", - module.getModifiedItemAttr(damageType + "DamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/modifyarmorresonancepostpercent.py b/eos/effects/modifyarmorresonancepostpercent.py deleted file mode 100644 index f5316cb3a..000000000 --- a/eos/effects/modifyarmorresonancepostpercent.py +++ /dev/null @@ -1,13 +0,0 @@ -# modifyArmorResonancePostPercent -# -# Used by: -# Modules from group: Armor Coating (202 of 202) -# Modules from group: Armor Plating Energized (187 of 187) -type = "passive" - - -def handler(fit, module, context): - for type in ("kinetic", "thermal", "explosive", "em"): - fit.ship.boostItemAttr("armor%sDamageResonance" % type.capitalize(), - module.getModifiedItemAttr("%sDamageResistanceBonus" % type), - stackingPenalties=True) diff --git a/eos/effects/modifyarmorresonancepostpercentpassive.py b/eos/effects/modifyarmorresonancepostpercentpassive.py deleted file mode 100644 index 3478f268f..000000000 --- a/eos/effects/modifyarmorresonancepostpercentpassive.py +++ /dev/null @@ -1,12 +0,0 @@ -# modifyArmorResonancePostPercentPassive -# -# Used by: -# Modules named like: Anti Pump (32 of 32) -type = "passive" - - -def handler(fit, module, context): - for type in ("kinetic", "thermal", "explosive", "em"): - fit.ship.boostItemAttr("armor" + type.capitalize() + "DamageResonance", - module.getModifiedItemAttr(type + "DamageResistanceBonus") or 0, - stackingPenalties=True) diff --git a/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py b/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py deleted file mode 100644 index 604e3e14b..000000000 --- a/eos/effects/modifyboostereffectchancewithboosterchancebonuspostpercent.py +++ /dev/null @@ -1,14 +0,0 @@ -# modifyBoosterEffectChanceWithBoosterChanceBonusPostPercent -# -# Used by: -# Implants named like: Eifyr and Co. 'Alchemist' Neurotoxin Recovery NR (2 of 2) -# Skill: Neurotoxin Recovery -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - for i in range(5): - attr = "boosterEffectChance{0}".format(i + 1) - fit.boosters.filteredItemBoost(lambda booster: attr in booster.itemModifiedAttributes, - attr, container.getModifiedItemAttr("boosterChanceBonus") * level) diff --git a/eos/effects/modifyenergywarfareresistance.py b/eos/effects/modifyenergywarfareresistance.py deleted file mode 100644 index 874cbf0d7..000000000 --- a/eos/effects/modifyenergywarfareresistance.py +++ /dev/null @@ -1,11 +0,0 @@ -# modifyEnergyWarfareResistance -# -# Used by: -# Modules from group: Capacitor Battery (30 of 30) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("energyWarfareResistance", - module.getModifiedItemAttr("energyWarfareResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/modifymaxvelocityofshippassive.py b/eos/effects/modifymaxvelocityofshippassive.py deleted file mode 100644 index 24e833fb3..000000000 --- a/eos/effects/modifymaxvelocityofshippassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# modifyMaxVelocityOfShipPassive -# -# Used by: -# Modules from group: Expanded Cargohold (7 of 7) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("maxVelocity", module.getModifiedItemAttr("maxVelocityModifier"), stackingPenalties=True) diff --git a/eos/effects/modifypowerrechargerate.py b/eos/effects/modifypowerrechargerate.py deleted file mode 100644 index 95814ce8c..000000000 --- a/eos/effects/modifypowerrechargerate.py +++ /dev/null @@ -1,14 +0,0 @@ -# modifyPowerRechargeRate -# -# Used by: -# Modules from group: Capacitor Flux Coil (6 of 6) -# Modules from group: Capacitor Power Relay (20 of 20) -# Modules from group: Capacitor Recharger (18 of 18) -# Modules from group: Power Diagnostic System (23 of 23) -# Modules from group: Reactor Control Unit (22 of 22) -# Modules from group: Shield Power Relay (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("rechargeRate", module.getModifiedItemAttr("capacitorRechargeRateMultiplier")) diff --git a/eos/effects/modifyshieldrechargerate.py b/eos/effects/modifyshieldrechargerate.py deleted file mode 100644 index bebf517a7..000000000 --- a/eos/effects/modifyshieldrechargerate.py +++ /dev/null @@ -1,13 +0,0 @@ -# modifyShieldRechargeRate -# -# Used by: -# Modules from group: Capacitor Power Relay (20 of 20) -# Modules from group: Power Diagnostic System (23 of 23) -# Modules from group: Reactor Control Unit (22 of 22) -# Modules from group: Shield Recharger (4 of 4) -# Modules named like: Flux Coil (12 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("shieldRechargeRate", module.getModifiedItemAttr("shieldRechargeRateMultiplier") or 1) diff --git a/eos/effects/modifyshieldrechargeratepassive.py b/eos/effects/modifyshieldrechargeratepassive.py deleted file mode 100644 index f66994415..000000000 --- a/eos/effects/modifyshieldrechargeratepassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# modifyShieldRechargeRatePassive -# -# Used by: -# Modules named like: Processor Overclocking Unit (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("shieldRechargeRate", module.getModifiedItemAttr("shieldRechargeRateMultiplier")) diff --git a/eos/effects/modifyshieldresonancepostpercent.py b/eos/effects/modifyshieldresonancepostpercent.py deleted file mode 100644 index 93125bf7c..000000000 --- a/eos/effects/modifyshieldresonancepostpercent.py +++ /dev/null @@ -1,12 +0,0 @@ -# modifyShieldResonancePostPercent -# -# Used by: -# Modules from group: Shield Resistance Amplifier (88 of 88) -type = "passive" - - -def handler(fit, module, context): - for type in ("kinetic", "thermal", "explosive", "em"): - fit.ship.boostItemAttr("shield%sDamageResonance" % type.capitalize(), - module.getModifiedItemAttr("%sDamageResistanceBonus" % type), - stackingPenalties=True) diff --git a/eos/effects/modifyshieldresonancepostpercentpassive.py b/eos/effects/modifyshieldresonancepostpercentpassive.py deleted file mode 100644 index dfb7b35a8..000000000 --- a/eos/effects/modifyshieldresonancepostpercentpassive.py +++ /dev/null @@ -1,12 +0,0 @@ -# modifyShieldResonancePostPercentPassive -# -# Used by: -# Modules named like: Anti Screen Reinforcer (32 of 32) -type = "passive" - - -def handler(fit, module, context): - for type in ("kinetic", "thermal", "explosive", "em"): - fit.ship.boostItemAttr("shield" + type.capitalize() + "DamageResonance", - module.getModifiedItemAttr(type + "DamageResistanceBonus") or 0, - stackingPenalties=True) diff --git a/eos/effects/modulebonusafterburner.py b/eos/effects/modulebonusafterburner.py deleted file mode 100644 index 71f4c96b1..000000000 --- a/eos/effects/modulebonusafterburner.py +++ /dev/null @@ -1,14 +0,0 @@ -# moduleBonusAfterburner -# -# Used by: -# Modules from group: Propulsion Module (65 of 133) -type = "active" -runTime = "late" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) - speedBoost = module.getModifiedItemAttr("speedFactor") - mass = fit.ship.getModifiedItemAttr("mass") - thrust = module.getModifiedItemAttr("speedBoostFactor") - fit.ship.boostItemAttr("maxVelocity", speedBoost * thrust / mass) diff --git a/eos/effects/modulebonusassaultdamagecontrol.py b/eos/effects/modulebonusassaultdamagecontrol.py deleted file mode 100644 index a7a6d9551..000000000 --- a/eos/effects/modulebonusassaultdamagecontrol.py +++ /dev/null @@ -1,16 +0,0 @@ -# moduleBonusAssaultDamageControl -# -# Used by: -# Variations of module: Assault Damage Control I (5 of 5) -type = "active" -runTime = "early" - - -def handler(fit, src, context): - for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): - for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): - bonus = "%s%sDamageResonance" % (attrPrefix, damageType) - bonus = "%s%s" % (bonus[0].lower(), bonus[1:]) - booster = "%s%sDamageResonance" % (layer, damageType) - - src.forceItemAttr(booster, src.getModifiedItemAttr("resistanceMultiplier")) diff --git a/eos/effects/modulebonusbastionmodule.py b/eos/effects/modulebonusbastionmodule.py deleted file mode 100644 index 09f0bd008..000000000 --- a/eos/effects/modulebonusbastionmodule.py +++ /dev/null @@ -1,72 +0,0 @@ -# moduleBonusBastionModule -# -# Used by: -# Module: Bastion Module I -type = "active" -runTime = "early" - - -def handler(fit, src, context): - # Resistances - for layer, attrPrefix in (('shield', 'shield'), ('armor', 'armor'), ('hull', '')): - for damageType in ('Kinetic', 'Thermal', 'Explosive', 'Em'): - bonus = "%s%sDamageResonance" % (attrPrefix, damageType) - bonus = "%s%s" % (bonus[0].lower(), bonus[1:]) - booster = "%s%sDamageResonance" % (layer, damageType) - penalize = False if layer == 'hull' else True - fit.ship.multiplyItemAttr(bonus, src.getModifiedItemAttr(booster), - stackingPenalties=penalize, penaltyGroup="preMul") - - # Turrets - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or - mod.item.requiresSkill("Large Hybrid Turret") or - mod.item.requiresSkill("Large Projectile Turret"), - "maxRange", src.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret") or - mod.item.requiresSkill("Large Hybrid Turret") or - mod.item.requiresSkill("Large Projectile Turret"), - "falloff", src.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) - - # Missiles - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes") or - mod.charge.requiresSkill("Cruise Missiles") or - mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", src.getModifiedItemAttr("missileVelocityBonus")) - - # Tanking - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("armorDamageAmountBonus"), - stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", src.getModifiedItemAttr("shieldBoostMultiplier"), - stackingPenalties=True) - - # Speed penalty - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("speedFactor")) - - # @todo: test these for April 2016 release - # Max locked targets - fit.ship.forceItemAttr("maxLockedTargets", src.getModifiedItemAttr("maxLockedTargets")) - - # Block Hostile ewar - fit.ship.forceItemAttr("disallowOffensiveModifiers", src.getModifiedItemAttr("disallowOffensiveModifiers")) - - # new with April 2016 release - for scanType in ('Magnetometric', 'Ladar', 'Gravimetric', 'Radar'): - fit.ship.boostItemAttr("scan{}Strength".format(scanType), - src.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)), - stackingPenalties=True) - - fit.ship.boostItemAttr("remoteRepairImpedance", src.getModifiedItemAttr("remoteRepairImpedanceBonus")) - fit.ship.boostItemAttr("remoteAssistanceImpedance", src.getModifiedItemAttr("remoteAssistanceImpedanceBonus")) - fit.ship.boostItemAttr("sensorDampenerResistance", src.getModifiedItemAttr("sensorDampenerResistanceBonus")) - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), - "activationBlocked", src.getModifiedItemAttr("activationBlockedStrenght")) - fit.ship.boostItemAttr("targetPainterResistance", src.getModifiedItemAttr("targetPainterResistanceBonus")) - fit.ship.boostItemAttr("weaponDisruptionResistance", src.getModifiedItemAttr("weaponDisruptionResistanceBonus")) - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) - - fit.ship.forceItemAttr("disallowDocking", src.getModifiedItemAttr("disallowDocking")) - fit.ship.forceItemAttr("disallowTethering", src.getModifiedItemAttr("disallowTethering")) diff --git a/eos/effects/modulebonuscapitaldronedurabilityenhancer.py b/eos/effects/modulebonuscapitaldronedurabilityenhancer.py deleted file mode 100644 index 754bbf2f1..000000000 --- a/eos/effects/modulebonuscapitaldronedurabilityenhancer.py +++ /dev/null @@ -1,17 +0,0 @@ -# moduleBonusCapitalDroneDurabilityEnhancer -# -# Used by: -# Variations of module: Capital Drone Durability Enhancer I (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", - src.getModifiedItemAttr("hullHpBonus")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", - src.getModifiedItemAttr("hullHpBonus")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", - src.getModifiedItemAttr("hullHpBonus")) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", - src.getModifiedItemAttr("hullHpBonus")) - fit.ship.boostItemAttr("cpuOutput", src.getModifiedItemAttr("drawback")) diff --git a/eos/effects/modulebonuscapitaldronescopechip.py b/eos/effects/modulebonuscapitaldronescopechip.py deleted file mode 100644 index 68be67520..000000000 --- a/eos/effects/modulebonuscapitaldronescopechip.py +++ /dev/null @@ -1,19 +0,0 @@ -# moduleBonusCapitalDroneScopeChip -# -# Used by: -# Variations of module: Capital Drone Scope Chip I (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", - src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", - src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("rangeSkillBonus"), - stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileRangeOptimal", - src.getModifiedItemAttr("rangeSkillBonus"), stackingPenalties=True) - fit.ship.boostItemAttr("cpuOutput", src.getModifiedItemAttr("drawback")) diff --git a/eos/effects/modulebonuscapitaldronespeedaugmentor.py b/eos/effects/modulebonuscapitaldronespeedaugmentor.py deleted file mode 100644 index c98e00110..000000000 --- a/eos/effects/modulebonuscapitaldronespeedaugmentor.py +++ /dev/null @@ -1,13 +0,0 @@ -# moduleBonusCapitalDroneSpeedAugmentor -# -# Used by: -# Variations of module: Capital Drone Speed Augmentor I (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", - src.getModifiedItemAttr("droneMaxVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", - src.getModifiedItemAttr("droneMaxVelocityBonus"), stackingPenalties=True) - fit.ship.boostItemAttr("cpuOutput", src.getModifiedItemAttr("drawback")) diff --git a/eos/effects/modulebonusdronedamageamplifier.py b/eos/effects/modulebonusdronedamageamplifier.py deleted file mode 100644 index e3a87f990..000000000 --- a/eos/effects/modulebonusdronedamageamplifier.py +++ /dev/null @@ -1,21 +0,0 @@ -# moduleBonusDroneDamageAmplifier -# -# Used by: -# Modules from group: Drone Damage Modules (11 of 11) -# Modules named like: C3 'Hivaa Saitsuo' Ballistic Control System (2 of 2) -# Module: Abyssal Ballistic Control System -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", - src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) diff --git a/eos/effects/modulebonusdronenavigationcomputer.py b/eos/effects/modulebonusdronenavigationcomputer.py deleted file mode 100644 index 9c7f9e777..000000000 --- a/eos/effects/modulebonusdronenavigationcomputer.py +++ /dev/null @@ -1,12 +0,0 @@ -# moduleBonusDroneNavigationComputer -# -# Used by: -# Modules from group: Drone Navigation Computer (8 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", - src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", - src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) diff --git a/eos/effects/modulebonusfightersupportunit.py b/eos/effects/modulebonusfightersupportunit.py deleted file mode 100644 index e79f21515..000000000 --- a/eos/effects/modulebonusfightersupportunit.py +++ /dev/null @@ -1,21 +0,0 @@ -# moduleBonusFighterSupportUnit -# -# Used by: -# Modules from group: Fighter Support Unit (8 of 8) -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", - src.getModifiedItemAttr("fighterBonusShieldCapacityPercent")) - fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", - src.getModifiedItemAttr("fighterBonusVelocityPercent"), stackingPenalties=True, penaltyGroup="postMul") - fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDuration", - src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True, penaltyGroup="postMul") - fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDuration", - src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True, penaltyGroup="postMul") - fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDuration", - src.getModifiedItemAttr("fighterBonusROFPercent"), stackingPenalties=True, penaltyGroup="postMul") - fit.fighters.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Fighters"), "shieldRechargeRate", - src.getModifiedItemAttr("fighterBonusShieldRechargePercent")) diff --git a/eos/effects/modulebonusmicrowarpdrive.py b/eos/effects/modulebonusmicrowarpdrive.py deleted file mode 100644 index 70478fa71..000000000 --- a/eos/effects/modulebonusmicrowarpdrive.py +++ /dev/null @@ -1,16 +0,0 @@ -# moduleBonusMicrowarpdrive -# -# Used by: -# Modules from group: Propulsion Module (68 of 133) -type = "active" -runTime = "late" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("mass", module.getModifiedItemAttr("massAddition")) - speedBoost = module.getModifiedItemAttr("speedFactor") - mass = fit.ship.getModifiedItemAttr("mass") - thrust = module.getModifiedItemAttr("speedBoostFactor") - fit.ship.boostItemAttr("maxVelocity", speedBoost * thrust / mass) - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties=True) diff --git a/eos/effects/modulebonusnetworkedsensorarray.py b/eos/effects/modulebonusnetworkedsensorarray.py deleted file mode 100644 index fb58a5928..000000000 --- a/eos/effects/modulebonusnetworkedsensorarray.py +++ /dev/null @@ -1,29 +0,0 @@ -# moduleBonusNetworkedSensorArray -# -# Used by: -# Module: Networked Sensor Array -type = "active" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("scanResolutionBonus"), stackingPenalties=True) - - for scanType in ('Magnetometric', 'Ladar', 'Gravimetric', 'Radar'): - attr = "scan{}Strength".format(scanType) - bonus = src.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)) - fit.ship.boostItemAttr(attr, bonus, stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), attr, bonus, - stackingPenalties=True) - - # EW cap need increase - groups = [ - 'Burst Jammer', - 'Weapon Disruptor', - 'ECM', - 'Stasis Grappler', - 'Sensor Dampener', - 'Target Painter'] - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups or - mod.item.requiresSkill("Propulsion Jamming"), - "capacitorNeed", src.getModifiedItemAttr("ewCapacitorNeedBonus")) diff --git a/eos/effects/modulebonusomnidirectionaltrackingenhancer.py b/eos/effects/modulebonusomnidirectionaltrackingenhancer.py deleted file mode 100644 index c6e8884e5..000000000 --- a/eos/effects/modulebonusomnidirectionaltrackingenhancer.py +++ /dev/null @@ -1,43 +0,0 @@ -# moduleBonusOmnidirectionalTrackingEnhancer -# -# Used by: -# Modules from group: Drone Tracking Enhancer (10 of 10) -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileExplosionRadius", - src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretRangeFalloff", src.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesExplosionRadius", - src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "falloff", - src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileRangeFalloff", src.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretTrackingSpeed", - src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", - src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", - src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesExplosionVelocity", - src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileExplosionVelocity", - src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", - src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) diff --git a/eos/effects/modulebonusomnidirectionaltrackinglink.py b/eos/effects/modulebonusomnidirectionaltrackinglink.py deleted file mode 100644 index d589475bd..000000000 --- a/eos/effects/modulebonusomnidirectionaltrackinglink.py +++ /dev/null @@ -1,43 +0,0 @@ -# moduleBonusOmnidirectionalTrackingLink -# -# Used by: -# Modules from group: Drone Tracking Modules (10 of 10) -type = "active" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretRangeFalloff", src.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesExplosionVelocity", - src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", - src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileExplosionRadius", - src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretTrackingSpeed", - src.getModifiedItemAttr("trackingSpeedBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesExplosionRadius", - src.getModifiedItemAttr("aoeCloudSizeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", - src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "falloff", - src.getModifiedItemAttr("falloffBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileExplosionVelocity", - src.getModifiedItemAttr("aoeVelocityBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileRangeFalloff", src.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", - src.getModifiedItemAttr("maxRangeBonus"), stackingPenalties=True) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretRangeOptimal", src.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py b/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py deleted file mode 100644 index cb4d4b21e..000000000 --- a/eos/effects/modulebonusomnidirectionaltrackinglinkoverload.py +++ /dev/null @@ -1,14 +0,0 @@ -# moduleBonusOmnidirectionalTrackingLinkOverload -# -# Used by: -# Modules from group: Drone Tracking Modules (10 of 10) -type = "overheat" - - -def handler(fit, module, context): - overloadBonus = module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus") - module.boostItemAttr("maxRangeBonus", overloadBonus) - module.boostItemAttr("falloffBonus", overloadBonus) - module.boostItemAttr("trackingSpeedBonus", overloadBonus) - module.boostItemAttr("aoeCloudSizeBonus", overloadBonus) - module.boostItemAttr("aoeVelocityBonus", overloadBonus) diff --git a/eos/effects/modulebonussiegemodule.py b/eos/effects/modulebonussiegemodule.py deleted file mode 100644 index c63e33440..000000000 --- a/eos/effects/modulebonussiegemodule.py +++ /dev/null @@ -1,64 +0,0 @@ -# moduleBonusSiegeModule -# -# Used by: -# Variations of module: Siege Module I (2 of 2) -type = "active" -runTime = "early" - - -def handler(fit, src, context): - # Turrets - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret") or - mod.item.requiresSkill("Capital Hybrid Turret") or - mod.item.requiresSkill("Capital Projectile Turret"), - "damageMultiplier", src.getModifiedItemAttr("siegeTurretDamageBonus")) - - # Missiles - for type in ("kinetic", "thermal", "explosive", "em"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes") or - mod.charge.requiresSkill("XL Cruise Missiles") or - mod.charge.requiresSkill("Torpedoes"), - "%sDamage" % type, src.getModifiedItemAttr("siegeMissileDamageBonus")) - - # Reppers - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation") or - mod.item.requiresSkill("Capital Repair Systems"), - "duration", src.getModifiedItemAttr("siegeLocalLogisticsDurationBonus")) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", src.getModifiedItemAttr("siegeLocalLogisticsAmountBonus"), - stackingPenalties=True) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("siegeLocalLogisticsAmountBonus"), - stackingPenalties=True) - - # Speed penalty - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("speedFactor")) - - # Mass - fit.ship.multiplyItemAttr("mass", src.getModifiedItemAttr("siegeMassMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") - - # @ todo: test for April 2016 release - # Block Hostile EWAR and friendly effects - fit.ship.forceItemAttr("disallowOffensiveModifiers", src.getModifiedItemAttr("disallowOffensiveModifiers")) - fit.ship.forceItemAttr("disallowAssistance", src.getModifiedItemAttr("disallowAssistance")) - - # new in April 2016 release - # missile ROF bonus - for group in ("Missile Launcher XL Torpedo", "Missile Launcher Rapid Torpedo", "Missile Launcher XL Cruise"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == group, "speed", - src.getModifiedItemAttr("siegeLauncherROFBonus")) - - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", - src.getModifiedItemAttr("siegeTorpedoVelocityBonus"), stackingPenalties=True) - - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) - fit.ship.boostItemAttr("remoteRepairImpedance", src.getModifiedItemAttr("remoteRepairImpedanceBonus")) - fit.ship.boostItemAttr("sensorDampenerResistance", src.getModifiedItemAttr("sensorDampenerResistanceBonus")) - fit.ship.boostItemAttr("remoteAssistanceImpedance", src.getModifiedItemAttr("remoteAssistanceImpedanceBonus")) - fit.ship.boostItemAttr("weaponDisruptionResistance", src.getModifiedItemAttr("weaponDisruptionResistanceBonus")) - - fit.ship.forceItemAttr("disallowDocking", src.getModifiedItemAttr("disallowDocking")) - fit.ship.forceItemAttr("disallowTethering", src.getModifiedItemAttr("disallowTethering")) diff --git a/eos/effects/modulebonustriagemodule.py b/eos/effects/modulebonustriagemodule.py deleted file mode 100644 index 3474de594..000000000 --- a/eos/effects/modulebonustriagemodule.py +++ /dev/null @@ -1,76 +0,0 @@ -# moduleBonusTriageModule -# -# Used by: -# Variations of module: Triage Module I (2 of 2) -type = "active" -runTime = "early" - - -def handler(fit, src, context): - # Remote effect bonuses (duration / amount / range / fallout) - for skill, amtAttr, stack in ( - ("Capital Remote Armor Repair Systems", "armorDamageAmount", True), - ("Capital Shield Emission Systems", "shieldBonus", True), - ("Capital Capacitor Emission Systems", "powerTransferAmount", False), - ("Capital Remote Hull Repair Systems", "structureDamageAmount", False)): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "duration", - src.getModifiedItemAttr("siegeRemoteLogisticsDurationBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, - src.getModifiedItemAttr("siegeRemoteLogisticsAmountBonus"), - stackingPenalties=stack) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "maxRange", - src.getModifiedItemAttr("siegeRemoteLogisticsRangeBonus"), stackingPenalties=True) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "falloffEffectiveness", - src.getModifiedItemAttr("siegeRemoteLogisticsRangeBonus"), stackingPenalties=True) - - # Local armor/shield rep effects (duration / amoutn) - for skill, amtAttr in ( - ("Capital Shield Operation", "shieldBonus"), - ("Capital Repair Systems", "armorDamageAmount")): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), "duration", - src.getModifiedItemAttr("siegeLocalLogisticsDurationBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), amtAttr, - src.getModifiedItemAttr("siegeLocalLogisticsAmountBonus")) - - # Speed bonus - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("speedFactor"), stackingPenalties=True) - - # Scan resolution multiplier - fit.ship.multiplyItemAttr("scanResolution", src.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties=True) - - # Mass multiplier - fit.ship.multiplyItemAttr("mass", src.getModifiedItemAttr("siegeMassMultiplier"), stackingPenalties=True) - - # Max locked targets - fit.ship.increaseItemAttr("maxLockedTargets", src.getModifiedItemAttr("maxLockedTargetsBonus")) - - # EW cap need increase - groups = [ - 'Burst Jammer', - 'Weapon Disruptor', - 'ECM', - 'Stasis Grappler', - 'Sensor Dampener', - 'Target Painter'] - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups or - mod.item.requiresSkill("Propulsion Jamming"), - "capacitorNeed", src.getModifiedItemAttr("ewCapacitorNeedBonus")) - - # todo: test for April 2016 release - # Block EWAR & projected effects - fit.ship.forceItemAttr("disallowOffensiveModifiers", src.getModifiedItemAttr("disallowOffensiveModifiers")) - fit.ship.forceItemAttr("disallowAssistance", src.getModifiedItemAttr("disallowAssistance")) - - # new in April 2016 release - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", - src.getModifiedItemAttr("droneDamageBonus"), stackingPenalties=True) - - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("siegeModeWarpStatus")) - fit.ship.boostItemAttr("sensorDampenerResistance", src.getModifiedItemAttr("sensorDampenerResistanceBonus")) - fit.ship.boostItemAttr("remoteAssistanceImpedance", src.getModifiedItemAttr("remoteAssistanceImpedanceBonus")) - fit.ship.boostItemAttr("remoteRepairImpedance", src.getModifiedItemAttr("remoteRepairImpedanceBonus")) - - fit.ship.forceItemAttr("disallowTethering", src.getModifiedItemAttr("disallowTethering")) - fit.ship.forceItemAttr("disallowDocking", src.getModifiedItemAttr("disallowDocking")) diff --git a/eos/effects/modulebonuswarfarelinkarmor.py b/eos/effects/modulebonuswarfarelinkarmor.py deleted file mode 100644 index c7cf29ce3..000000000 --- a/eos/effects/modulebonuswarfarelinkarmor.py +++ /dev/null @@ -1,25 +0,0 @@ -# moduleBonusWarfareLinkArmor -# -# Used by: -# Variations of module: Armor Command Burst I (2 of 2) - -""" -Some documentation: -When the fit is calculated, we gather up all the gang effects and stick them onto the fit. We don't run the actual -effect yet, only give the fit details so that it can run the effect at a later time. We need to do this so that we can -only run the strongest effect. When we are done, one of the last things that we do with the fit is to loop through those -bonuses and actually run the effect. To do this, we have a special argument passed into the effect handler that tells it -which warfareBuffID to run (shouldn't need this right now, but better safe than sorry) -""" - -type = "active", "gang" - - -def handler(fit, module, context, **kwargs): - for x in range(1, 5): - if module.getModifiedChargeAttr("warfareBuff{}ID".format(x)): - value = module.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = module.getModifiedChargeAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, module, kwargs['effect']) diff --git a/eos/effects/modulebonuswarfarelinkinfo.py b/eos/effects/modulebonuswarfarelinkinfo.py deleted file mode 100644 index dd1e1111b..000000000 --- a/eos/effects/modulebonuswarfarelinkinfo.py +++ /dev/null @@ -1,16 +0,0 @@ -# moduleBonusWarfareLinkInfo -# -# Used by: -# Variations of module: Information Command Burst I (2 of 2) - -type = "active", "gang" - - -def handler(fit, module, context, **kwargs): - for x in range(1, 5): - if module.getModifiedChargeAttr("warfareBuff{}ID".format(x)): - value = module.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = module.getModifiedChargeAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, module, kwargs['effect']) diff --git a/eos/effects/modulebonuswarfarelinkmining.py b/eos/effects/modulebonuswarfarelinkmining.py deleted file mode 100644 index 55876bc34..000000000 --- a/eos/effects/modulebonuswarfarelinkmining.py +++ /dev/null @@ -1,16 +0,0 @@ -# moduleBonusWarfareLinkMining -# -# Used by: -# Variations of module: Mining Foreman Burst I (2 of 2) - -type = "active", "gang" - - -def handler(fit, module, context, **kwargs): - for x in range(1, 5): - if module.getModifiedChargeAttr("warfareBuff{}ID".format(x)): - value = module.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = module.getModifiedChargeAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, module, kwargs['effect']) diff --git a/eos/effects/modulebonuswarfarelinkshield.py b/eos/effects/modulebonuswarfarelinkshield.py deleted file mode 100644 index 45cd0ac6f..000000000 --- a/eos/effects/modulebonuswarfarelinkshield.py +++ /dev/null @@ -1,16 +0,0 @@ -# moduleBonusWarfareLinkShield -# -# Used by: -# Variations of module: Shield Command Burst I (2 of 2) - -type = "active", "gang" - - -def handler(fit, module, context, **kwargs): - for x in range(1, 5): - if module.getModifiedChargeAttr("warfareBuff{}ID".format(x)): - value = module.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = module.getModifiedChargeAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, module, kwargs['effect']) diff --git a/eos/effects/modulebonuswarfarelinkskirmish.py b/eos/effects/modulebonuswarfarelinkskirmish.py deleted file mode 100644 index fc400c791..000000000 --- a/eos/effects/modulebonuswarfarelinkskirmish.py +++ /dev/null @@ -1,16 +0,0 @@ -# moduleBonusWarfareLinkSkirmish -# -# Used by: -# Variations of module: Skirmish Command Burst I (2 of 2) - -type = "active", "gang" - - -def handler(fit, module, context, **kwargs): - for x in range(1, 5): - if module.getModifiedChargeAttr("warfareBuff{}ID".format(x)): - value = module.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = module.getModifiedChargeAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, module, kwargs['effect']) diff --git a/eos/effects/moduletitaneffectgenerator.py b/eos/effects/moduletitaneffectgenerator.py deleted file mode 100644 index 741de5ba4..000000000 --- a/eos/effects/moduletitaneffectgenerator.py +++ /dev/null @@ -1,15 +0,0 @@ -# moduleTitanEffectGenerator -# -# Used by: -# Modules from group: Titan Phenomena Generator (4 of 4) -type = "active", "gang" - - -def handler(fit, module, context, **kwargs): - for x in range(1, 5): - if module.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = module.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = module.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, module, kwargs['effect']) diff --git a/eos/effects/mwdsignatureradiusrolebonus.py b/eos/effects/mwdsignatureradiusrolebonus.py deleted file mode 100644 index 2c5ce0bbc..000000000 --- a/eos/effects/mwdsignatureradiusrolebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# MWDSignatureRadiusRoleBonus -# -# Used by: -# Ships from group: Assault Frigate (8 of 12) -# Ships from group: Command Destroyer (4 of 4) -# Ships from group: Heavy Assault Cruiser (8 of 11) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("MWDSignatureRadiusBonus")) diff --git a/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py b/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py deleted file mode 100644 index 143f84076..000000000 --- a/eos/effects/navigationvelocitybonuspostpercentmaxvelocitylocationship.py +++ /dev/null @@ -1,10 +0,0 @@ -# navigationVelocityBonusPostPercentMaxVelocityLocationShip -# -# Used by: -# Implant: Low-grade Snake Alpha -# Implant: Mid-grade Snake Alpha -type = "passive" - - -def handler(fit, implant, context): - fit.ship.boostItemAttr("maxVelocity", implant.getModifiedItemAttr("velocityBonus")) diff --git a/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py b/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py deleted file mode 100644 index 6f68c7292..000000000 --- a/eos/effects/navigationvelocitybonuspostpercentmaxvelocityship.py +++ /dev/null @@ -1,17 +0,0 @@ -# navigationVelocityBonusPostPercentMaxVelocityShip -# -# Used by: -# Modules from group: Rig Anchor (4 of 4) -# Implants named like: Agency 'Overclocker' SB Dose (4 of 4) -# Implants named like: grade Snake (16 of 18) -# Modules named like: Auxiliary Thrusters (8 of 8) -# Implant: Quafe Zero -# Skill: Navigation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - amount = container.getModifiedItemAttr("velocityBonus") or 0 - fit.ship.boostItemAttr("maxVelocity", amount * level, - stackingPenalties="skill" not in context and "implant" not in context and "booster" not in context) diff --git a/eos/effects/npcentityremotearmorrepairer.py b/eos/effects/npcentityremotearmorrepairer.py deleted file mode 100644 index e74505c96..000000000 --- a/eos/effects/npcentityremotearmorrepairer.py +++ /dev/null @@ -1,15 +0,0 @@ -# npcEntityRemoteArmorRepairer -# -# Used by: -# Drones named like: Armor Maintenance Bot (6 of 6) -type = "projected", "active" - - -def handler(fit, container, context): - if "projected" in context: - bonus = container.getModifiedItemAttr("armorDamageAmount") - duration = container.getModifiedItemAttr("duration") / 1000.0 - rps = bonus / duration - fit.extraAttributes.increase("armorRepair", rps) - fit.extraAttributes.increase("armorRepairPreSpool", rps) - fit.extraAttributes.increase("armorRepairFullSpool", rps) diff --git a/eos/effects/npcentityremotehullrepairer.py b/eos/effects/npcentityremotehullrepairer.py deleted file mode 100644 index b3d935bc9..000000000 --- a/eos/effects/npcentityremotehullrepairer.py +++ /dev/null @@ -1,14 +0,0 @@ -# npcEntityRemoteHullRepairer -# -# Used by: -# Drones named like: Hull Maintenance Bot (6 of 6) -type = "projected", "active" -runTime = "late" - - -def handler(fit, module, context): - if "projected" not in context: - return - bonus = module.getModifiedItemAttr("structureDamageAmount") - duration = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("hullRepair", bonus / duration) diff --git a/eos/effects/npcentityremoteshieldbooster.py b/eos/effects/npcentityremoteshieldbooster.py deleted file mode 100644 index 35e49b9d5..000000000 --- a/eos/effects/npcentityremoteshieldbooster.py +++ /dev/null @@ -1,12 +0,0 @@ -# npcEntityRemoteShieldBooster -# -# Used by: -# Drones named like: Shield Maintenance Bot (6 of 6) -type = "projected", "active" - - -def handler(fit, container, context): - if "projected" in context: - bonus = container.getModifiedItemAttr("shieldBonus") - duration = container.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", bonus / duration) diff --git a/eos/effects/npcentityweapondisruptor.py b/eos/effects/npcentityweapondisruptor.py deleted file mode 100644 index 28661af18..000000000 --- a/eos/effects/npcentityweapondisruptor.py +++ /dev/null @@ -1,18 +0,0 @@ -# npcEntityWeaponDisruptor -# -# Used by: -# Drones named like: TD (3 of 3) -type = "projected", "active" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" in context: - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/offensivedefensivereduction.py b/eos/effects/offensivedefensivereduction.py deleted file mode 100644 index 39c120f49..000000000 --- a/eos/effects/offensivedefensivereduction.py +++ /dev/null @@ -1,32 +0,0 @@ -# OffensiveDefensiveReduction -# -# Used by: -# Celestials named like: Drifter Incursion (6 of 6) -# Celestials named like: Incursion ship attributes effects (3 of 3) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - damages = ("em", "thermal", "kinetic", "explosive") - for damage in damages: - # Nerf missile damage - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "{0}Damage".format(damage), - beacon.getModifiedItemAttr("systemEffectDamageReduction")) - # Nerf smartbomb damage - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Smart Bomb", - "{0}Damage".format(damage), - beacon.getModifiedItemAttr("systemEffectDamageReduction")) - # Nerf armor resistances - fit.ship.boostItemAttr("armor{0}DamageResonance".format(damage.capitalize()), - beacon.getModifiedItemAttr("armor{0}DamageResistanceBonus".format(damage.capitalize()))) - # Nerf shield resistances - fit.ship.boostItemAttr("shield{0}DamageResonance".format(damage.capitalize()), - beacon.getModifiedItemAttr("shield{0}DamageResistanceBonus".format(damage.capitalize()))) - # Nerf drone damage output - fit.drones.filteredItemBoost(lambda drone: True, - "damageMultiplier", beacon.getModifiedItemAttr("systemEffectDamageReduction")) - # Nerf turret damage output - fit.modules.filteredItemBoost(lambda module: module.item.requiresSkill("Gunnery"), - "damageMultiplier", beacon.getModifiedItemAttr("systemEffectDamageReduction")) diff --git a/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py b/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py deleted file mode 100644 index 55e0cb883..000000000 --- a/eos/effects/onlinejumpdriveconsumptionamountbonuspercentage.py +++ /dev/null @@ -1,11 +0,0 @@ -# onlineJumpDriveConsumptionAmountBonusPercentage -# -# Used by: -# Modules from group: Jump Drive Economizer (3 of 3) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.ship.boostItemAttr("jumpDriveConsumptionAmount", - module.getModifiedItemAttr("consumptionQuantityBonusPercentage"), stackingPenalties=True) diff --git a/eos/effects/overloadrofbonus.py b/eos/effects/overloadrofbonus.py deleted file mode 100644 index c0fedef1a..000000000 --- a/eos/effects/overloadrofbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# overloadRofBonus -# -# Used by: -# Modules from group: Missile Launcher Torpedo (22 of 22) -# Items from market group: Ship Equipment > Turrets & Bays (429 of 883) -# Module: Interdiction Sphere Launcher I -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("speed", module.getModifiedItemAttr("overloadRofBonus")) diff --git a/eos/effects/overloadselfarmordamageamountdurationbonus.py b/eos/effects/overloadselfarmordamageamountdurationbonus.py deleted file mode 100644 index c7a2a1049..000000000 --- a/eos/effects/overloadselfarmordamageamountdurationbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# overloadSelfArmorDamageAmountDurationBonus -# -# Used by: -# Modules from group: Ancillary Armor Repairer (7 of 7) -# Modules from group: Armor Repair Unit (108 of 108) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("duration", module.getModifiedItemAttr("overloadSelfDurationBonus")) - module.boostItemAttr("armorDamageAmount", module.getModifiedItemAttr("overloadArmorDamageAmount"), - stackingPenalties=True) diff --git a/eos/effects/overloadselfdamagebonus.py b/eos/effects/overloadselfdamagebonus.py deleted file mode 100644 index 073b1ead3..000000000 --- a/eos/effects/overloadselfdamagebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# overloadSelfDamageBonus -# -# Used by: -# Modules from group: Energy Weapon (101 of 214) -# Modules from group: Hybrid Weapon (105 of 221) -# Modules from group: Precursor Weapon (15 of 15) -# Modules from group: Projectile Weapon (99 of 165) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("damageMultiplier", module.getModifiedItemAttr("overloadDamageModifier")) diff --git a/eos/effects/overloadselfdurationbonus.py b/eos/effects/overloadselfdurationbonus.py deleted file mode 100644 index e4ecde55c..000000000 --- a/eos/effects/overloadselfdurationbonus.py +++ /dev/null @@ -1,21 +0,0 @@ -# overloadSelfDurationBonus -# -# Used by: -# Modules from group: Ancillary Remote Shield Booster (4 of 4) -# Modules from group: Capacitor Booster (59 of 59) -# Modules from group: Energy Neutralizer (54 of 54) -# Modules from group: Energy Nosferatu (54 of 54) -# Modules from group: Hull Repair Unit (25 of 25) -# Modules from group: Remote Armor Repairer (39 of 39) -# Modules from group: Remote Capacitor Transmitter (41 of 41) -# Modules from group: Remote Shield Booster (38 of 38) -# Modules from group: Smart Bomb (118 of 118) -# Modules from group: Warp Disrupt Field Generator (7 of 7) -# Modules named like: Remote Repairer (56 of 56) -# Module: Reactive Armor Hardener -# Module: Target Spectrum Breaker -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("duration", module.getModifiedItemAttr("overloadSelfDurationBonus") or 0) diff --git a/eos/effects/overloadselfecmstrenghtbonus.py b/eos/effects/overloadselfecmstrenghtbonus.py deleted file mode 100644 index f39a5eed1..000000000 --- a/eos/effects/overloadselfecmstrenghtbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# overloadSelfECMStrenghtBonus -# -# Used by: -# Modules from group: Burst Jammer (11 of 11) -# Modules from group: ECM (39 of 39) -type = "overheat" - - -def handler(fit, module, context): - if "projected" not in context: - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - module.boostItemAttr("scan{0}StrengthBonus".format(scanType), - module.getModifiedItemAttr("overloadECMStrengthBonus"), - stackingPenalties=True) diff --git a/eos/effects/overloadselfemhardeningbonus.py b/eos/effects/overloadselfemhardeningbonus.py deleted file mode 100644 index 7e6cc6166..000000000 --- a/eos/effects/overloadselfemhardeningbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# overloadSelfEmHardeningBonus -# -# Used by: -# Variations of module: Armor EM Hardener I (39 of 39) -# Variations of module: EM Ward Field I (19 of 19) -# Module: Civilian EM Ward Field -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("emDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfexplosivehardeningbonus.py b/eos/effects/overloadselfexplosivehardeningbonus.py deleted file mode 100644 index 9762eaf14..000000000 --- a/eos/effects/overloadselfexplosivehardeningbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# overloadSelfExplosiveHardeningBonus -# -# Used by: -# Variations of module: Armor Explosive Hardener I (39 of 39) -# Variations of module: Explosive Deflection Field I (19 of 19) -# Module: Civilian Explosive Deflection Field -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("explosiveDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfhardeninginvulnerabilitybonus.py b/eos/effects/overloadselfhardeninginvulnerabilitybonus.py deleted file mode 100644 index 59e6a1575..000000000 --- a/eos/effects/overloadselfhardeninginvulnerabilitybonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# overloadSelfHardeningInvulnerabilityBonus -# -# Used by: -# Modules named like: Capital Flex Hardener (9 of 9) -# Variations of module: Adaptive Invulnerability Field I (17 of 17) -type = "overheat" - - -def handler(fit, module, context): - for type in ("kinetic", "thermal", "explosive", "em"): - module.boostItemAttr("%sDamageResistanceBonus" % type, - module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfkinetichardeningbonus.py b/eos/effects/overloadselfkinetichardeningbonus.py deleted file mode 100644 index 549ddf5e7..000000000 --- a/eos/effects/overloadselfkinetichardeningbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# overloadSelfKineticHardeningBonus -# -# Used by: -# Variations of module: Armor Kinetic Hardener I (39 of 39) -# Variations of module: Kinetic Deflection Field I (19 of 19) -# Module: Civilian Kinetic Deflection Field -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("kineticDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselfmissileguidancebonus5.py b/eos/effects/overloadselfmissileguidancebonus5.py deleted file mode 100644 index f92b98aea..000000000 --- a/eos/effects/overloadselfmissileguidancebonus5.py +++ /dev/null @@ -1,16 +0,0 @@ -# overloadSelfMissileGuidanceBonus5 -# -# Used by: -# Modules from group: Missile Guidance Computer (3 of 3) -type = "overheat" - - -def handler(fit, module, context): - for tgtAttr in ( - "aoeCloudSizeBonus", - "explosionDelayBonus", - "missileVelocityBonus", - "maxVelocityModifier", - "aoeVelocityBonus" - ): - module.boostItemAttr(tgtAttr, module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) diff --git a/eos/effects/overloadselfmissileguidancemodulebonus.py b/eos/effects/overloadselfmissileguidancemodulebonus.py deleted file mode 100644 index 3a8a9ab52..000000000 --- a/eos/effects/overloadselfmissileguidancemodulebonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# overloadSelfMissileGuidanceModuleBonus -# -# Used by: -# Variations of module: Guidance Disruptor I (6 of 6) -type = "overheat" - - -def handler(fit, module, context): - for tgtAttr in ( - "aoeCloudSizeBonus", - "explosionDelayBonus", - "missileVelocityBonus", - "aoeVelocityBonus" - ): - module.boostItemAttr(tgtAttr, module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) diff --git a/eos/effects/overloadselfpainterbonus.py b/eos/effects/overloadselfpainterbonus.py deleted file mode 100644 index 67b69fc55..000000000 --- a/eos/effects/overloadselfpainterbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# overloadSelfPainterBonus -# -# Used by: -# Modules from group: Target Painter (8 of 8) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("signatureRadiusBonus", module.getModifiedItemAttr("overloadPainterStrengthBonus") or 0) diff --git a/eos/effects/overloadselfrangebonus.py b/eos/effects/overloadselfrangebonus.py deleted file mode 100644 index 781bf4794..000000000 --- a/eos/effects/overloadselfrangebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# overloadSelfRangeBonus -# -# Used by: -# Modules from group: Stasis Grappler (7 of 7) -# Modules from group: Stasis Web (19 of 19) -# Modules from group: Warp Scrambler (54 of 55) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("maxRange", module.getModifiedItemAttr("overloadRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/overloadselfsensormodulebonus.py b/eos/effects/overloadselfsensormodulebonus.py deleted file mode 100644 index 378e739b1..000000000 --- a/eos/effects/overloadselfsensormodulebonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# overloadSelfSensorModuleBonus -# -# Used by: -# Modules from group: Remote Sensor Booster (8 of 8) -# Modules from group: Sensor Booster (16 of 16) -# Modules from group: Sensor Dampener (6 of 6) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("maxTargetRangeBonus", module.getModifiedItemAttr("overloadSensorModuleStrengthBonus")) - module.boostItemAttr("scanResolutionBonus", module.getModifiedItemAttr("overloadSensorModuleStrengthBonus"), - stackingPenalties=True) - - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - module.boostItemAttr( - "scan{}StrengthPercent".format(scanType), - module.getModifiedItemAttr("overloadSensorModuleStrengthBonus"), - stackingPenalties=True - ) diff --git a/eos/effects/overloadselfshieldbonusdurationbonus.py b/eos/effects/overloadselfshieldbonusdurationbonus.py deleted file mode 100644 index 4706ccbca..000000000 --- a/eos/effects/overloadselfshieldbonusdurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# overloadSelfShieldBonusDurationBonus -# -# Used by: -# Modules from group: Ancillary Shield Booster (8 of 8) -# Modules from group: Shield Booster (97 of 97) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("duration", module.getModifiedItemAttr("overloadSelfDurationBonus")) - module.boostItemAttr("shieldBonus", module.getModifiedItemAttr("overloadShieldBonus"), stackingPenalties=True) diff --git a/eos/effects/overloadselfspeedbonus.py b/eos/effects/overloadselfspeedbonus.py deleted file mode 100644 index cc5dbe3f6..000000000 --- a/eos/effects/overloadselfspeedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# overloadSelfSpeedBonus -# -# Used by: -# Modules from group: Propulsion Module (133 of 133) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("speedFactor", module.getModifiedItemAttr("overloadSpeedFactorBonus"), - stackingPenalties=True) diff --git a/eos/effects/overloadselfthermalhardeningbonus.py b/eos/effects/overloadselfthermalhardeningbonus.py deleted file mode 100644 index a97ab16fb..000000000 --- a/eos/effects/overloadselfthermalhardeningbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# overloadSelfThermalHardeningBonus -# -# Used by: -# Variations of module: Armor Thermal Hardener I (39 of 39) -# Variations of module: Thermal Dissipation Field I (19 of 19) -# Module: Civilian Thermal Dissipation Field -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("thermalDamageResistanceBonus", module.getModifiedItemAttr("overloadHardeningBonus")) diff --git a/eos/effects/overloadselftrackingmodulebonus.py b/eos/effects/overloadselftrackingmodulebonus.py deleted file mode 100644 index fb217b93d..000000000 --- a/eos/effects/overloadselftrackingmodulebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# overloadSelfTrackingModuleBonus -# -# Used by: -# Modules named like: Tracking Computer (19 of 19) -# Variations of module: Tracking Disruptor I (6 of 6) -type = "overheat" - - -def handler(fit, module, context): - module.boostItemAttr("maxRangeBonus", module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) - module.boostItemAttr("falloffBonus", module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) - module.boostItemAttr("trackingSpeedBonus", module.getModifiedItemAttr("overloadTrackingModuleStrengthBonus")) diff --git a/eos/effects/passivespeedlimit.py b/eos/effects/passivespeedlimit.py deleted file mode 100644 index c8744ddcf..000000000 --- a/eos/effects/passivespeedlimit.py +++ /dev/null @@ -1,10 +0,0 @@ -# passiveSpeedLimit -# -# Used by: -# Modules from group: Entosis Link (6 of 6) -runtime = "late" -type = "passive" - - -def handler(fit, src, context): - fit.extraAttributes['speedLimit'] = src.getModifiedItemAttr("speedLimit") diff --git a/eos/effects/pointdefense.py b/eos/effects/pointdefense.py deleted file mode 100644 index 44cf69af7..000000000 --- a/eos/effects/pointdefense.py +++ /dev/null @@ -1,9 +0,0 @@ -# pointDefense -# -# Used by: -# Structure Modules from group: Structure Area Denial Module (2 of 2) -type = 'active' - - -def handler(fit, module, context): - pass diff --git a/eos/effects/powerbooster.py b/eos/effects/powerbooster.py deleted file mode 100644 index 42dcaca89..000000000 --- a/eos/effects/powerbooster.py +++ /dev/null @@ -1,17 +0,0 @@ -# powerBooster -# -# Used by: -# Modules from group: Capacitor Booster (59 of 59) -type = "active" - - -def handler(fit, module, context): - # Set reload time to 10 seconds - module.reloadTime = 10000 - # Make so that reloads are always taken into account during clculations - module.forceReload = True - - if module.charge is None: - return - capAmount = module.getModifiedChargeAttr("capacitorBonus") or 0 - module.itemModifiedAttributes["capacitorNeed"] = -capAmount diff --git a/eos/effects/powerincrease.py b/eos/effects/powerincrease.py deleted file mode 100644 index 2d953deb4..000000000 --- a/eos/effects/powerincrease.py +++ /dev/null @@ -1,9 +0,0 @@ -# powerIncrease -# -# Used by: -# Modules from group: Auxiliary Power Core (5 of 5) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("powerOutput", module.getModifiedItemAttr("powerIncrease")) diff --git a/eos/effects/poweroutputaddpassive.py b/eos/effects/poweroutputaddpassive.py deleted file mode 100644 index bbaaddd28..000000000 --- a/eos/effects/poweroutputaddpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# powerOutputAddPassive -# -# Used by: -# Subsystems from group: Offensive Systems (8 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("powerOutput", module.getModifiedItemAttr("powerOutput")) diff --git a/eos/effects/poweroutputmultiply.py b/eos/effects/poweroutputmultiply.py deleted file mode 100644 index 2add2137d..000000000 --- a/eos/effects/poweroutputmultiply.py +++ /dev/null @@ -1,15 +0,0 @@ -# powerOutputMultiply -# -# Used by: -# Modules from group: Capacitor Flux Coil (6 of 6) -# Modules from group: Capacitor Power Relay (20 of 20) -# Modules from group: Power Diagnostic System (23 of 23) -# Modules from group: Reactor Control Unit (22 of 22) -# Variations of structure module: Standup Reactor Control Unit I (2 of 2) -type = "passive" - - -def handler(fit, module, context): - # We default this to None as there are times when the source attribute doesn't exist (for example, Cap Power Relay). - # It will return 0 as it doesn't exist, which would nullify whatever the target attribute is - fit.ship.multiplyItemAttr("powerOutput", module.getModifiedItemAttr("powerOutputMultiplier", None)) diff --git a/eos/effects/probelaunchercpupercentrolebonust3.py b/eos/effects/probelaunchercpupercentrolebonust3.py deleted file mode 100644 index b78379d9a..000000000 --- a/eos/effects/probelaunchercpupercentrolebonust3.py +++ /dev/null @@ -1,10 +0,0 @@ -# probeLauncherCPUPercentRoleBonusT3 -# -# Used by: -# Ships from group: Strategic Cruiser (4 of 4) -# Ships from group: Tactical Destroyer (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"), "cpu", src.getModifiedItemAttr("roleBonusT3ProbeCPU")) diff --git a/eos/effects/projectilefired.py b/eos/effects/projectilefired.py deleted file mode 100644 index 491b73f0c..000000000 --- a/eos/effects/projectilefired.py +++ /dev/null @@ -1,15 +0,0 @@ -# projectileFired -# -# Used by: -# Modules from group: Hybrid Weapon (221 of 221) -# Modules from group: Projectile Weapon (165 of 165) -type = 'active' - - -def handler(fit, module, context): - rt = module.getModifiedItemAttr("reloadTime") - if not rt: - # Set reload time to 10 seconds - module.reloadTime = 10000 - else: - module.reloadTime = rt diff --git a/eos/effects/projectileweapondamagemultiply.py b/eos/effects/projectileweapondamagemultiply.py deleted file mode 100644 index aeafffff7..000000000 --- a/eos/effects/projectileweapondamagemultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# projectileWeaponDamageMultiply -# -# Used by: -# Modules from group: Gyrostabilizer (14 of 14) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/projectileweapondamagemultiplypassive.py b/eos/effects/projectileweapondamagemultiplypassive.py deleted file mode 100644 index 0060dafc8..000000000 --- a/eos/effects/projectileweapondamagemultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# projectileWeaponDamageMultiplyPassive -# -# Used by: -# Modules named like: Projectile Collision Accelerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", - "damageMultiplier", module.getModifiedItemAttr("damageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/projectileweaponspeedmultiply.py b/eos/effects/projectileweaponspeedmultiply.py deleted file mode 100644 index 73c1d538d..000000000 --- a/eos/effects/projectileweaponspeedmultiply.py +++ /dev/null @@ -1,11 +0,0 @@ -# projectileWeaponSpeedMultiply -# -# Used by: -# Modules from group: Gyrostabilizer (14 of 14) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/projectileweaponspeedmultiplypassive.py b/eos/effects/projectileweaponspeedmultiplypassive.py deleted file mode 100644 index 6a1b54d15..000000000 --- a/eos/effects/projectileweaponspeedmultiplypassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# projectileWeaponSpeedMultiplyPassive -# -# Used by: -# Modules named like: Projectile Burst Aerator (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Projectile Weapon", - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/propulsionskillcapneedbonusskilllevel.py b/eos/effects/propulsionskillcapneedbonusskilllevel.py deleted file mode 100644 index 80cacae21..000000000 --- a/eos/effects/propulsionskillcapneedbonusskilllevel.py +++ /dev/null @@ -1,14 +0,0 @@ -# propulsionSkillCapNeedBonusSkillLevel -# -# Used by: -# Implants named like: Zainou 'Gypsy' Propulsion Jamming PJ (6 of 6) -# Skill: Propulsion Jamming -type = "passive" - - -def handler(fit, container, context): - - level = container.level if "skill" in context else 1 - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Propulsion Jamming"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py b/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py deleted file mode 100644 index fa0994205..000000000 --- a/eos/effects/rapidfiringrofbonuspostpercentspeedlocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,10 +0,0 @@ -# rapidFiringRofBonusPostPercentSpeedLocationShipModulesRequiringGunnery -# -# Used by: -# Skill: Rapid Firing -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "speed", skill.getModifiedItemAttr("rofBonus") * skill.level) diff --git a/eos/effects/reconshipcloakcpubonus1.py b/eos/effects/reconshipcloakcpubonus1.py deleted file mode 100644 index e7c05671c..000000000 --- a/eos/effects/reconshipcloakcpubonus1.py +++ /dev/null @@ -1,11 +0,0 @@ -# reconShipCloakCpuBonus1 -# -# Used by: -# Ships from group: Force Recon Ship (7 of 9) -type = "passive" -runTime = "early" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cloaking Device", - "cpu", ship.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py b/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py deleted file mode 100644 index 73ff83db6..000000000 --- a/eos/effects/remotearmorsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringremotearmorsystems.py +++ /dev/null @@ -1,13 +0,0 @@ -# remoteArmorSystemsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringRemoteArmorSystems -# -# Used by: -# Implants named like: Inherent Implants 'Noble' Remote Armor Repair Systems RA (6 of 6) -# Modules named like: Remote Repair Augmentor (6 of 8) -# Skill: Remote Armor Repair Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py b/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py deleted file mode 100644 index 54897ba12..000000000 --- a/eos/effects/remotecapacitortransmitterpowerneedbonuseffect.py +++ /dev/null @@ -1,10 +0,0 @@ -# remoteCapacitorTransmitterPowerNeedBonusEffect -# -# Used by: -# Ships from group: Logistics (3 of 7) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "power", ship.getModifiedItemAttr("powerTransferPowerNeedBonus")) diff --git a/eos/effects/remoteecmfalloff.py b/eos/effects/remoteecmfalloff.py deleted file mode 100644 index 3ab1e4010..000000000 --- a/eos/effects/remoteecmfalloff.py +++ /dev/null @@ -1,19 +0,0 @@ -# remoteECMFalloff -# -# Used by: -# Modules from group: ECM (39 of 39) -# Starbases from group: Electronic Warfare Battery (12 of 12) -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "projected", "active" - - -def handler(fit, module, context, **kwargs): - if "projected" in context: - # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength - - if 'effect' in kwargs: - strModifier *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/remotesensorboostfalloff.py b/eos/effects/remotesensorboostfalloff.py deleted file mode 100644 index a649c80e4..000000000 --- a/eos/effects/remotesensorboostfalloff.py +++ /dev/null @@ -1,22 +0,0 @@ -# remoteSensorBoostFalloff -# -# Used by: -# Modules from group: Remote Sensor Booster (8 of 8) -type = "projected", "active" - - -def handler(fit, module, context): - if "projected" not in context: - return - - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True) - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True) - - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - fit.ship.boostItemAttr( - "scan{}Strength".format(scanType), - module.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)), - stackingPenalties=True - ) diff --git a/eos/effects/remotesensordampentity.py b/eos/effects/remotesensordampentity.py deleted file mode 100644 index 642b55411..000000000 --- a/eos/effects/remotesensordampentity.py +++ /dev/null @@ -1,16 +0,0 @@ -# remoteSensorDampEntity -# -# Used by: -# Drones named like: SD (3 of 3) -type = "projected", "active" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True, *args, **kwargs) - - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/remotesensordampfalloff.py b/eos/effects/remotesensordampfalloff.py deleted file mode 100644 index cc60e1986..000000000 --- a/eos/effects/remotesensordampfalloff.py +++ /dev/null @@ -1,17 +0,0 @@ -# remoteSensorDampFalloff -# -# Used by: -# Modules from group: Sensor Dampener (6 of 6) -# Starbases from group: Sensor Dampening Battery (3 of 3) -type = "projected", "active" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True, *args, **kwargs) - - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/remotetargetpaintentity.py b/eos/effects/remotetargetpaintentity.py deleted file mode 100644 index 07b8c9169..000000000 --- a/eos/effects/remotetargetpaintentity.py +++ /dev/null @@ -1,11 +0,0 @@ -# remoteTargetPaintEntity -# -# Used by: -# Drones named like: TP (3 of 3) -type = "projected", "active" - - -def handler(fit, container, context, *args, **kwargs): - if "projected" in context: - fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/remotetargetpaintfalloff.py b/eos/effects/remotetargetpaintfalloff.py deleted file mode 100644 index 0e80806ca..000000000 --- a/eos/effects/remotetargetpaintfalloff.py +++ /dev/null @@ -1,11 +0,0 @@ -# remoteTargetPaintFalloff -# -# Used by: -# Modules from group: Target Painter (8 of 8) -type = "projected", "active" - - -def handler(fit, container, context, *args, **kwargs): - if "projected" in context: - fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/remotewebifierentity.py b/eos/effects/remotewebifierentity.py deleted file mode 100644 index ca4b34de7..000000000 --- a/eos/effects/remotewebifierentity.py +++ /dev/null @@ -1,12 +0,0 @@ -# remoteWebifierEntity -# -# Used by: -# Drones from group: Stasis Webifying Drone (3 of 3) -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/remotewebifierfalloff.py b/eos/effects/remotewebifierfalloff.py deleted file mode 100644 index c50e08141..000000000 --- a/eos/effects/remotewebifierfalloff.py +++ /dev/null @@ -1,14 +0,0 @@ -# remoteWebifierFalloff -# -# Used by: -# Modules from group: Stasis Grappler (7 of 7) -# Modules from group: Stasis Web (19 of 19) -# Starbases from group: Stasis Webification Battery (3 of 3) -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/remotewebifiermaxrangebonus.py b/eos/effects/remotewebifiermaxrangebonus.py deleted file mode 100644 index 531f18ded..000000000 --- a/eos/effects/remotewebifiermaxrangebonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# remoteWebifierMaxRangeBonus -# -# Used by: -# Implants named like: Inquest 'Eros' Stasis Webifier MR (3 of 3) -# Implants named like: Inquest 'Hedone' Entanglement Optimizer WS (3 of 3) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", - src.getModifiedItemAttr("stasisWebRangeBonus"), stackingPenalties=False) diff --git a/eos/effects/repairdronearmordamageamountbonus.py b/eos/effects/repairdronearmordamageamountbonus.py deleted file mode 100644 index 3d7d56d4b..000000000 --- a/eos/effects/repairdronearmordamageamountbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# repairDroneArmorDamageAmountBonus -# -# Used by: -# Modules named like: Drone Repair Augmentor (8 of 8) -# Skill: Repair Drone Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", - "armorDamageAmount", container.getModifiedItemAttr("damageHP") * level, - stackingPenalties=True) diff --git a/eos/effects/repairdronehullbonusbonus.py b/eos/effects/repairdronehullbonusbonus.py deleted file mode 100644 index 9e1ea724a..000000000 --- a/eos/effects/repairdronehullbonusbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# repairDroneHullBonusBonus -# -# Used by: -# Modules named like: Drone Repair Augmentor (8 of 8) -# Skill: Repair Drone Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", - "structureDamageAmount", container.getModifiedItemAttr("damageHP") * level) diff --git a/eos/effects/repairdroneshieldbonusbonus.py b/eos/effects/repairdroneshieldbonusbonus.py deleted file mode 100644 index 86bcba79b..000000000 --- a/eos/effects/repairdroneshieldbonusbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# repairDroneShieldBonusBonus -# -# Used by: -# Modules named like: Drone Repair Augmentor (8 of 8) -# Skill: Repair Drone Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda drone: drone.item.group.name == "Logistic Drone", - "shieldBonus", container.getModifiedItemAttr("damageHP") * level) diff --git a/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py b/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py deleted file mode 100644 index 79a48defa..000000000 --- a/eos/effects/repairsystemsdurationbonuspostpercentdurationlocationshipmodulesrequiringrepairsystems.py +++ /dev/null @@ -1,14 +0,0 @@ -# repairSystemsDurationBonusPostPercentDurationLocationShipModulesRequiringRepairSystems -# -# Used by: -# Implants named like: Inherent Implants 'Noble' Repair Systems RS (6 of 6) -# Modules named like: Nanobot Accelerator (8 of 8) -# Implant: Numon Family Heirloom -# Skill: Repair Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "duration", container.getModifiedItemAttr("durationSkillBonus") * level) diff --git a/eos/effects/republicsetbonus3.py b/eos/effects/republicsetbonus3.py deleted file mode 100644 index c4275fa9b..000000000 --- a/eos/effects/republicsetbonus3.py +++ /dev/null @@ -1,12 +0,0 @@ -# republicsetbonus3 -# -# Used by: -# Implants named like: High grade Jackal (6 of 6) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanLadarStrengthPercent", - implant.getModifiedItemAttr("implantSetRepublicFleet")) diff --git a/eos/effects/republicsetlgbonus.py b/eos/effects/republicsetlgbonus.py deleted file mode 100644 index c853ebed7..000000000 --- a/eos/effects/republicsetlgbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# republicsetLGbonus -# -# Used by: -# Implants named like: Low grade Jackal (6 of 6) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "scanLadarStrengthModifier", - implant.getModifiedItemAttr("implantSetLGRepublicFleet")) diff --git a/eos/effects/resistancekillerhullall.py b/eos/effects/resistancekillerhullall.py deleted file mode 100644 index cdf18fee6..000000000 --- a/eos/effects/resistancekillerhullall.py +++ /dev/null @@ -1,11 +0,0 @@ -# resistanceKillerHullAll -# -# Used by: -# Modules named like: Polarized (12 of 18) -type = "passive" - - -def handler(fit, module, context): - for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): - tgtAttr = '{}DamageResonance'.format(dmgType) - fit.ship.forceItemAttr(tgtAttr, module.getModifiedItemAttr("resistanceKillerHull")) diff --git a/eos/effects/resistancekillershieldarmorall.py b/eos/effects/resistancekillershieldarmorall.py deleted file mode 100644 index c89b4d310..000000000 --- a/eos/effects/resistancekillershieldarmorall.py +++ /dev/null @@ -1,12 +0,0 @@ -# resistanceKillerShieldArmorAll -# -# Used by: -# Modules named like: Polarized (12 of 18) -type = "passive" - - -def handler(fit, module, context): - for layer in ('armor', 'shield'): - for dmgType in ('em', 'thermal', 'kinetic', 'explosive'): - tgtAttr = '{}{}DamageResonance'.format(layer, dmgType.capitalize()) - fit.ship.forceItemAttr(tgtAttr, module.getModifiedItemAttr("resistanceKiller")) diff --git a/eos/effects/rigdrawbackreductionarmor.py b/eos/effects/rigdrawbackreductionarmor.py deleted file mode 100644 index 312e04d7a..000000000 --- a/eos/effects/rigdrawbackreductionarmor.py +++ /dev/null @@ -1,13 +0,0 @@ -# rigDrawbackReductionArmor -# -# Used by: -# Skill: Armor Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Armor", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Resource Processing", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionastronautics.py b/eos/effects/rigdrawbackreductionastronautics.py deleted file mode 100644 index 679e381eb..000000000 --- a/eos/effects/rigdrawbackreductionastronautics.py +++ /dev/null @@ -1,13 +0,0 @@ -# rigDrawbackReductionAstronautics -# -# Used by: -# Skill: Astronautics Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Navigation", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Anchor", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductiondrones.py b/eos/effects/rigdrawbackreductiondrones.py deleted file mode 100644 index 1761fae59..000000000 --- a/eos/effects/rigdrawbackreductiondrones.py +++ /dev/null @@ -1,11 +0,0 @@ -# rigDrawbackReductionDrones -# -# Used by: -# Skill: Drones Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Drones", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionelectronic.py b/eos/effects/rigdrawbackreductionelectronic.py deleted file mode 100644 index 7e27b8d0b..000000000 --- a/eos/effects/rigdrawbackreductionelectronic.py +++ /dev/null @@ -1,15 +0,0 @@ -# rigDrawbackReductionElectronic -# -# Used by: -# Skill: Electronic Superiority Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Electronic Systems", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Scanning", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Targeting", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionenergyweapon.py b/eos/effects/rigdrawbackreductionenergyweapon.py deleted file mode 100644 index 9d99e3513..000000000 --- a/eos/effects/rigdrawbackreductionenergyweapon.py +++ /dev/null @@ -1,11 +0,0 @@ -# rigDrawbackReductionEnergyWeapon -# -# Used by: -# Skill: Energy Weapon Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Energy Weapon", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionhybrid.py b/eos/effects/rigdrawbackreductionhybrid.py deleted file mode 100644 index b7ffc0955..000000000 --- a/eos/effects/rigdrawbackreductionhybrid.py +++ /dev/null @@ -1,11 +0,0 @@ -# rigDrawbackReductionHybrid -# -# Used by: -# Skill: Hybrid Weapon Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Hybrid Weapon", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionlauncher.py b/eos/effects/rigdrawbackreductionlauncher.py deleted file mode 100644 index 04276c9b9..000000000 --- a/eos/effects/rigdrawbackreductionlauncher.py +++ /dev/null @@ -1,11 +0,0 @@ -# rigDrawbackReductionLauncher -# -# Used by: -# Skill: Launcher Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Launcher", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionprojectile.py b/eos/effects/rigdrawbackreductionprojectile.py deleted file mode 100644 index c6c339041..000000000 --- a/eos/effects/rigdrawbackreductionprojectile.py +++ /dev/null @@ -1,11 +0,0 @@ -# rigDrawbackReductionProjectile -# -# Used by: -# Skill: Projectile Weapon Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Projectile Weapon", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rigdrawbackreductionshield.py b/eos/effects/rigdrawbackreductionshield.py deleted file mode 100644 index fa2f75f88..000000000 --- a/eos/effects/rigdrawbackreductionshield.py +++ /dev/null @@ -1,11 +0,0 @@ -# rigDrawbackReductionShield -# -# Used by: -# Skill: Shield Rigging -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Rig Shield", "drawback", - src.getModifiedItemAttr("rigDrawbackBonus") * lvl) diff --git a/eos/effects/rolebonus2boosterpenaltyreduction.py b/eos/effects/rolebonus2boosterpenaltyreduction.py deleted file mode 100644 index 19645f49e..000000000 --- a/eos/effects/rolebonus2boosterpenaltyreduction.py +++ /dev/null @@ -1,21 +0,0 @@ -# roleBonus2BoosterPenaltyReduction -# -# Used by: -# Ship: Victor -# Ship: Virtuoso -type = "passive" - - -def handler(fit, src, context): - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterMissileAOECloudPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterCapacitorCapacityPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterAOEVelocityPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterArmorRepairAmountPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterMissileVelocityPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterTurretTrackingPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterShieldCapacityPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterTurretOptimalRangePenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterShieldBoostAmountPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterTurretFalloffPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterArmorHPPenalty", src.getModifiedItemAttr("shipBonusRole2")) - fit.boosters.filteredItemBoost(lambda mod: mod.item.group.name == "Booster", "boosterMaxVelocityPenalty", src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/rolebonusbomblauncherpwgcpu3.py b/eos/effects/rolebonusbomblauncherpwgcpu3.py deleted file mode 100644 index e61365e2a..000000000 --- a/eos/effects/rolebonusbomblauncherpwgcpu3.py +++ /dev/null @@ -1,10 +0,0 @@ -# roleBonusBombLauncherPWGCPU3 -# -# Used by: -# Ship: Virtuoso -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Bomb Deployment"), "power", src.getModifiedItemAttr("shipBonusRole3")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Bomb Deployment"), "cpu", src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/rolebonusbulkheadcpu.py b/eos/effects/rolebonusbulkheadcpu.py deleted file mode 100644 index 51ed0d68b..000000000 --- a/eos/effects/rolebonusbulkheadcpu.py +++ /dev/null @@ -1,11 +0,0 @@ -# roleBonusBulkheadCPU -# -# Used by: -# Ships from group: Freighter (4 of 5) -# Ships from group: Jump Freighter (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Reinforced Bulkhead", - "cpu", ship.getModifiedItemAttr("cpuNeedBonus")) diff --git a/eos/effects/rolebonuscdlinkspgreduction.py b/eos/effects/rolebonuscdlinkspgreduction.py deleted file mode 100644 index 619d3e9e0..000000000 --- a/eos/effects/rolebonuscdlinkspgreduction.py +++ /dev/null @@ -1,11 +0,0 @@ -# roleBonusCDLinksPGReduction -# -# Used by: -# Ships from group: Command Destroyer (4 of 4) -# Ship: Porpoise -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "power", - src.getModifiedItemAttr("roleBonusCD")) diff --git a/eos/effects/rolebonusecmcapcpu.py b/eos/effects/rolebonusecmcapcpu.py deleted file mode 100644 index 3b8c77525..000000000 --- a/eos/effects/rolebonusecmcapcpu.py +++ /dev/null @@ -1,11 +0,0 @@ -# roleBonusECMCapCPU -# -# Used by: -# Ship: Griffin Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "capacitorNeed", - src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "cpu", src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonusecmrange.py b/eos/effects/rolebonusecmrange.py deleted file mode 100644 index a981b4f94..000000000 --- a/eos/effects/rolebonusecmrange.py +++ /dev/null @@ -1,12 +0,0 @@ -# roleBonusECMRange -# -# Used by: -# Ship: Griffin Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "falloffEffectiveness", - src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", - src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonusflagcruisermodulefittingreduction.py b/eos/effects/rolebonusflagcruisermodulefittingreduction.py deleted file mode 100644 index 2020db2d9..000000000 --- a/eos/effects/rolebonusflagcruisermodulefittingreduction.py +++ /dev/null @@ -1,17 +0,0 @@ -# roleBonusFlagCruiserModuleFittingReduction -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Propulsion Module", "Micro Jump Drive"), - "power", src.getModifiedItemAttr("flagCruiserFittingBonusPropMods")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Propulsion Module", "Micro Jump Drive"), - "cpu", src.getModifiedItemAttr("flagCruiserFittingBonusPropMods")) - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Target Painter", "Scan Probe Launcher"), - "cpu", src.getModifiedItemAttr("flagCruiserFittingBonusPainterProbes")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Target Painter", "Scan Probe Launcher"), - "power", src.getModifiedItemAttr("flagCruiserFittingBonusPainterProbes")) diff --git a/eos/effects/rolebonusflagcruisertargetpaintermodifications.py b/eos/effects/rolebonusflagcruisertargetpaintermodifications.py deleted file mode 100644 index 7400a0707..000000000 --- a/eos/effects/rolebonusflagcruisertargetpaintermodifications.py +++ /dev/null @@ -1,12 +0,0 @@ -# roleBonusFlagCruiserTargetPainterModifications -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", "signatureRadiusBonus", - src.getModifiedItemAttr("targetPainterStrengthModifierFlagCruisers")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Painter", "maxRange", - src.getModifiedItemAttr("targetPainterRangeModifierFlagCruisers")) diff --git a/eos/effects/rolebonusiceoreminingdurationcap.py b/eos/effects/rolebonusiceoreminingdurationcap.py deleted file mode 100644 index f2dfdf612..000000000 --- a/eos/effects/rolebonusiceoreminingdurationcap.py +++ /dev/null @@ -1,16 +0,0 @@ -# roleBonusIceOreMiningDurationCap -# -# Used by: -# Variations of ship: Covetor (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "capacitorNeed", - src.getModifiedItemAttr("miningDurationRoleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), "duration", - src.getModifiedItemAttr("miningDurationRoleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "duration", - src.getModifiedItemAttr("miningDurationRoleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), "capacitorNeed", - src.getModifiedItemAttr("miningDurationRoleBonus")) diff --git a/eos/effects/rolebonusjustscramblerstrength.py b/eos/effects/rolebonusjustscramblerstrength.py deleted file mode 100644 index 7be57333b..000000000 --- a/eos/effects/rolebonusjustscramblerstrength.py +++ /dev/null @@ -1,10 +0,0 @@ -# roleBonusJustScramblerStrength -# -# Used by: -# Ship: Maulus Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Navigation"), - "warpScrambleStrength", ship.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py b/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py deleted file mode 100644 index 4f2dd193e..000000000 --- a/eos/effects/rolebonusmaraudermjdrreactivationdelaybonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# roleBonusMarauderMJDRReactivationDelayBonus -# -# Used by: -# Ships from group: Marauder (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Micro Jump Drive", - "moduleReactivationDelay", ship.getModifiedItemAttr("roleBonusMarauder")) diff --git a/eos/effects/rolebonusmhtdamage1.py b/eos/effects/rolebonusmhtdamage1.py deleted file mode 100644 index bbec67fbd..000000000 --- a/eos/effects/rolebonusmhtdamage1.py +++ /dev/null @@ -1,9 +0,0 @@ -# roleBonusMHTDamage1 -# -# Used by: -# Ship: Victor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/rolebonusremotearmorrepairoptimalfalloff.py b/eos/effects/rolebonusremotearmorrepairoptimalfalloff.py deleted file mode 100644 index fae8acfac..000000000 --- a/eos/effects/rolebonusremotearmorrepairoptimalfalloff.py +++ /dev/null @@ -1,14 +0,0 @@ -# roleBonusRemoteArmorRepairOptimalFalloff -# -# Used by: -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "falloffEffectiveness", - src.getModifiedItemAttr("roleBonusRepairRange")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "maxRange", - src.getModifiedItemAttr("roleBonusRepairRange")) diff --git a/eos/effects/rolebonusstasisrange.py b/eos/effects/rolebonusstasisrange.py deleted file mode 100644 index c08aa135f..000000000 --- a/eos/effects/rolebonusstasisrange.py +++ /dev/null @@ -1,10 +0,0 @@ -# roleBonusStasisRange -# -# Used by: -# Ship: Vigil Fleet Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "maxRange", - src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonustorprof1.py b/eos/effects/rolebonustorprof1.py deleted file mode 100644 index c87583d18..000000000 --- a/eos/effects/rolebonustorprof1.py +++ /dev/null @@ -1,9 +0,0 @@ -# roleBonusTorpRoF1 -# -# Used by: -# Ship: Virtuoso -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", "speed", src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/rolebonuswarpspeed.py b/eos/effects/rolebonuswarpspeed.py deleted file mode 100644 index 2532ab94a..000000000 --- a/eos/effects/rolebonuswarpspeed.py +++ /dev/null @@ -1,13 +0,0 @@ -# roleBonusWarpSpeed -# -# Used by: -# Ship: Cynabal -# Ship: Dramiel -# Ship: Leopard -# Ship: Machariel -# Ship: Victorieux Luxury Yacht -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("shipRoleBonusWarpSpeed")) diff --git a/eos/effects/rolebonuswdcapcpu.py b/eos/effects/rolebonuswdcapcpu.py deleted file mode 100644 index c16985002..000000000 --- a/eos/effects/rolebonuswdcapcpu.py +++ /dev/null @@ -1,12 +0,0 @@ -# roleBonusWDCapCPU -# -# Used by: -# Ship: Crucifier Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "cpu", - src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "capacitorNeed", - src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rolebonuswdrange.py b/eos/effects/rolebonuswdrange.py deleted file mode 100644 index 02e61cf78..000000000 --- a/eos/effects/rolebonuswdrange.py +++ /dev/null @@ -1,12 +0,0 @@ -# roleBonusWDRange -# -# Used by: -# Ship: Crucifier Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffEffectiveness", - src.getModifiedItemAttr("roleBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRange", - src.getModifiedItemAttr("roleBonus")) diff --git a/eos/effects/rorqualcargoscanrangebonus.py b/eos/effects/rorqualcargoscanrangebonus.py deleted file mode 100644 index 1b10ac223..000000000 --- a/eos/effects/rorqualcargoscanrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# rorqualCargoScanRangeBonus -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Cargo Scanner", - "cargoScanRange", ship.getModifiedItemAttr("cargoScannerRangeBonus")) diff --git a/eos/effects/rorqualsurveyscannerrangebonus.py b/eos/effects/rorqualsurveyscannerrangebonus.py deleted file mode 100644 index 1a49d68ce..000000000 --- a/eos/effects/rorqualsurveyscannerrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# rorqualSurveyScannerRangeBonus -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Survey Scanner", - "surveyScanRange", ship.getModifiedItemAttr("surveyScannerRangeBonus")) diff --git a/eos/effects/salvagermoduledurationreduction.py b/eos/effects/salvagermoduledurationreduction.py deleted file mode 100644 index ecf0ee4cf..000000000 --- a/eos/effects/salvagermoduledurationreduction.py +++ /dev/null @@ -1,10 +0,0 @@ -# salvagerModuleDurationReduction -# -# Used by: -# Implant: Poteque 'Prospector' Environmental Analysis EY-1005 -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Salvager", - "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/salvaging.py b/eos/effects/salvaging.py deleted file mode 100644 index f9445babc..000000000 --- a/eos/effects/salvaging.py +++ /dev/null @@ -1,9 +0,0 @@ -# salvaging -# -# Used by: -# Modules from group: Salvager (3 of 3) -type = "active" - - -def handler(fit, module, context): - pass diff --git a/eos/effects/salvagingaccessdifficultybonuseffectpassive.py b/eos/effects/salvagingaccessdifficultybonuseffectpassive.py deleted file mode 100644 index f762ce8f0..000000000 --- a/eos/effects/salvagingaccessdifficultybonuseffectpassive.py +++ /dev/null @@ -1,12 +0,0 @@ -# salvagingAccessDifficultyBonusEffectPassive -# -# Used by: -# Modules from group: Rig Resource Processing (8 of 10) -# Implant: Poteque 'Prospector' Salvaging SV-905 -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Salvaging"), - "accessDifficultyBonus", container.getModifiedItemAttr("accessDifficultyBonus"), - position="post") diff --git a/eos/effects/scangravimetricstrengthmodifiereffect.py b/eos/effects/scangravimetricstrengthmodifiereffect.py deleted file mode 100644 index 64388c877..000000000 --- a/eos/effects/scangravimetricstrengthmodifiereffect.py +++ /dev/null @@ -1,9 +0,0 @@ -# ScanGravimetricStrengthModifierEffect -# -# Used by: -# Implants named like: Low grade Talon (5 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanGravimetricStrength", implant.getModifiedItemAttr("scanGravimetricStrengthModifier")) diff --git a/eos/effects/scanladarstrengthmodifiereffect.py b/eos/effects/scanladarstrengthmodifiereffect.py deleted file mode 100644 index 43c9aeafd..000000000 --- a/eos/effects/scanladarstrengthmodifiereffect.py +++ /dev/null @@ -1,9 +0,0 @@ -# ScanLadarStrengthModifierEffect -# -# Used by: -# Implants named like: Low grade Jackal (5 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanLadarStrength", implant.getModifiedItemAttr("scanLadarStrengthModifier")) diff --git a/eos/effects/scanmagnetometricstrengthmodifiereffect.py b/eos/effects/scanmagnetometricstrengthmodifiereffect.py deleted file mode 100644 index a4c66463f..000000000 --- a/eos/effects/scanmagnetometricstrengthmodifiereffect.py +++ /dev/null @@ -1,10 +0,0 @@ -# ScanMagnetometricStrengthModifierEffect -# -# Used by: -# Implants named like: Low grade Spur (5 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanMagnetometricStrength", - implant.getModifiedItemAttr("scanMagnetometricStrengthModifier")) diff --git a/eos/effects/scanradarstrengthmodifiereffect.py b/eos/effects/scanradarstrengthmodifiereffect.py deleted file mode 100644 index 94069c92f..000000000 --- a/eos/effects/scanradarstrengthmodifiereffect.py +++ /dev/null @@ -1,9 +0,0 @@ -# ScanRadarStrengthModifierEffect -# -# Used by: -# Implants named like: Low grade Grail (5 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.ship.increaseItemAttr("scanRadarStrength", implant.getModifiedItemAttr("scanRadarStrengthModifier")) diff --git a/eos/effects/scanresolutionmultiplieronline.py b/eos/effects/scanresolutionmultiplieronline.py deleted file mode 100644 index 9b453a4c8..000000000 --- a/eos/effects/scanresolutionmultiplieronline.py +++ /dev/null @@ -1,11 +0,0 @@ -# scanResolutionMultiplierOnline -# -# Used by: -# Modules from group: Warp Core Stabilizer (8 of 8) -# Module: Target Spectrum Breaker -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/scanstrengthbonuspercentonline.py b/eos/effects/scanstrengthbonuspercentonline.py deleted file mode 100644 index bccd06a4a..000000000 --- a/eos/effects/scanstrengthbonuspercentonline.py +++ /dev/null @@ -1,12 +0,0 @@ -# scanStrengthBonusPercentOnline -# -# Used by: -# Modules from group: Signal Amplifier (7 of 7) -type = "passive" - - -def handler(fit, module, context): - for type in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - fit.ship.boostItemAttr("scan%sStrength" % type, - module.getModifiedItemAttr("scan%sStrengthPercent" % type), - stackingPenalties=True) diff --git a/eos/effects/scanstrengthbonuspercentpassive.py b/eos/effects/scanstrengthbonuspercentpassive.py deleted file mode 100644 index d00f4e2b6..000000000 --- a/eos/effects/scanstrengthbonuspercentpassive.py +++ /dev/null @@ -1,13 +0,0 @@ -# scanStrengthBonusPercentPassive -# -# Used by: -# Implants named like: High grade (20 of 66) -type = "passive" - - -def handler(fit, implant, context): - for type in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - sensorType = "scan{0}Strength".format(type) - sensorBoost = "scan{0}StrengthPercent".format(type) - if sensorBoost in implant.item.attributes: - fit.ship.boostItemAttr(sensorType, implant.getModifiedItemAttr(sensorBoost)) diff --git a/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py b/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py deleted file mode 100644 index ba150045c..000000000 --- a/eos/effects/scoutdroneoperationdronerangebonusmodadddronecontroldistancechar.py +++ /dev/null @@ -1,12 +0,0 @@ -# scoutDroneOperationDroneRangeBonusModAddDroneControlDistanceChar -# -# Used by: -# Modules named like: Drone Control Range Augmentor (8 of 8) -# Skills named like: Drone Avionics (2 of 2) -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - amount = container.getModifiedItemAttr("droneRangeBonus") * level - fit.extraAttributes.increase("droneControlRange", amount) diff --git a/eos/effects/scriptdurationbonus.py b/eos/effects/scriptdurationbonus.py deleted file mode 100644 index 23361f87b..000000000 --- a/eos/effects/scriptdurationbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# scriptDurationBonus -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("duration", module.getModifiedChargeAttr("durationBonus")) diff --git a/eos/effects/scriptmassbonuspercentagebonus.py b/eos/effects/scriptmassbonuspercentagebonus.py deleted file mode 100644 index dcf4a6c02..000000000 --- a/eos/effects/scriptmassbonuspercentagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptMassBonusPercentageBonus -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" -runTime = "early" - - -def handler(fit, module, context): - module.boostItemAttr("massBonusPercentage", module.getModifiedChargeAttr("massBonusPercentageBonus")) diff --git a/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py b/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py deleted file mode 100644 index 12be7588b..000000000 --- a/eos/effects/scriptmissileguidancecomputeraoecloudsizebonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptMissileGuidanceComputerAOECloudSizeBonusBonus -# -# Used by: -# Charges from group: Tracking Script (2 of 2) -# Charges named like: Missile Script (4 of 4) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("aoeCloudSizeBonus", module.getModifiedChargeAttr("aoeCloudSizeBonusBonus")) diff --git a/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py b/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py deleted file mode 100644 index 800c91a08..000000000 --- a/eos/effects/scriptmissileguidancecomputeraoevelocitybonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptMissileGuidanceComputerAOEVelocityBonusBonus -# -# Used by: -# Charges from group: Tracking Script (2 of 2) -# Charges named like: Missile Script (4 of 4) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("aoeVelocityBonus", module.getModifiedChargeAttr("aoeVelocityBonusBonus")) diff --git a/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py b/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py deleted file mode 100644 index 5f6b2e00b..000000000 --- a/eos/effects/scriptmissileguidancecomputerexplosiondelaybonusbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# scriptMissileGuidanceComputerExplosionDelayBonusBonus -# -# Used by: -# Charges named like: Missile Script (4 of 4) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("explosionDelayBonus", module.getModifiedChargeAttr("explosionDelayBonusBonus")) diff --git a/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py b/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py deleted file mode 100644 index 9867c0a84..000000000 --- a/eos/effects/scriptmissileguidancecomputermissilevelocitybonusbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# scriptMissileGuidanceComputerMissileVelocityBonusBonus -# -# Used by: -# Charges named like: Missile Script (4 of 4) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("missileVelocityBonus", module.getModifiedChargeAttr("missileVelocityBonusBonus")) diff --git a/eos/effects/scriptresistancebonusbonus.py b/eos/effects/scriptresistancebonusbonus.py deleted file mode 100644 index d2c313dca..000000000 --- a/eos/effects/scriptresistancebonusbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# scriptResistanceBonusBonus -# -# Used by: -# Charges named like: Resistance Script (8 of 8) -type = "passive" - - -def handler(fit, src, context): - src.boostItemAttr("emDamageResistanceBonus", src.getModifiedChargeAttr("emDamageResistanceBonusBonus")) - src.boostItemAttr("explosiveDamageResistanceBonus", - src.getModifiedChargeAttr("explosiveDamageResistanceBonusBonus")) - src.boostItemAttr("kineticDamageResistanceBonus", src.getModifiedChargeAttr("kineticDamageResistanceBonusBonus")) - src.boostItemAttr("thermalDamageResistanceBonus", src.getModifiedChargeAttr("thermalDamageResistanceBonusBonus")) diff --git a/eos/effects/scriptscangravimetricstrengthbonusbonus.py b/eos/effects/scriptscangravimetricstrengthbonusbonus.py deleted file mode 100644 index e9003c77d..000000000 --- a/eos/effects/scriptscangravimetricstrengthbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptscanGravimetricStrengthBonusBonus -# -# Used by: -# Charges from group: Structure ECM script (4 of 4) -type = "passive" -runTime = "early" - - -def handler(fit, src, context, *args, **kwargs): - src.boostItemAttr("scanGravimetricStrengthBonus", src.getModifiedChargeAttr("scanGravimetricStrengthBonusBonus")) diff --git a/eos/effects/scriptscanladarstrengthbonusbonus.py b/eos/effects/scriptscanladarstrengthbonusbonus.py deleted file mode 100644 index 9300e4cca..000000000 --- a/eos/effects/scriptscanladarstrengthbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptscanLadarStrengthBonusBonus -# -# Used by: -# Charges from group: Structure ECM script (4 of 4) -type = "passive" -runTime = "early" - - -def handler(fit, src, context, *args, **kwargs): - src.boostItemAttr("scanLadarStrengthBonus", src.getModifiedChargeAttr("scanLadarStrengthBonusBonus")) diff --git a/eos/effects/scriptscanmagnetometricstrengthbonusbonus.py b/eos/effects/scriptscanmagnetometricstrengthbonusbonus.py deleted file mode 100644 index 99e18d3c3..000000000 --- a/eos/effects/scriptscanmagnetometricstrengthbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptscanMagnetometricStrengthBonusBonus -# -# Used by: -# Charges from group: Structure ECM script (4 of 4) -type = "passive" -runTime = "early" - - -def handler(fit, src, context, *args, **kwargs): - src.boostItemAttr("scanMagnetometricStrengthBonus", src.getModifiedChargeAttr("scanMagnetometricStrengthBonusBonus")) diff --git a/eos/effects/scriptscanradarstrengthbonusbonus.py b/eos/effects/scriptscanradarstrengthbonusbonus.py deleted file mode 100644 index d747d6510..000000000 --- a/eos/effects/scriptscanradarstrengthbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptscanRadarStrengthBonusBonus -# -# Used by: -# Charges from group: Structure ECM script (4 of 4) -type = "passive" -runTime = "early" - - -def handler(fit, src, context, *args, **kwargs): - src.boostItemAttr("scanRadarStrengthBonus", src.getModifiedChargeAttr("scanRadarStrengthBonusBonus")) diff --git a/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py b/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py deleted file mode 100644 index a74e9d0bc..000000000 --- a/eos/effects/scriptsensorboostermaxtargetrangebonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptSensorBoosterMaxTargetRangeBonusBonus -# -# Used by: -# Charges from group: Sensor Booster Script (3 of 3) -# Charges from group: Sensor Dampener Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("maxTargetRangeBonus", module.getModifiedChargeAttr("maxTargetRangeBonusBonus")) diff --git a/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py b/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py deleted file mode 100644 index c1d064018..000000000 --- a/eos/effects/scriptsensorboosterscanresolutionbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptSensorBoosterScanResolutionBonusBonus -# -# Used by: -# Charges from group: Sensor Booster Script (3 of 3) -# Charges from group: Sensor Dampener Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("scanResolutionBonus", module.getModifiedChargeAttr("scanResolutionBonusBonus")) diff --git a/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py b/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py deleted file mode 100644 index 467c7edef..000000000 --- a/eos/effects/scriptsensorboostersensorstrengthbonusbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# scriptSensorBoosterSensorStrengthBonusBonus -# -# Used by: -# Charges from group: Sensor Booster Script (3 of 3) -type = "active" - - -def handler(fit, module, context): - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - module.boostItemAttr("scan{}StrengthPercent".format(scanType), - module.getModifiedChargeAttr("sensorStrengthBonusBonus")) diff --git a/eos/effects/scriptsignatureradiusbonusbonus.py b/eos/effects/scriptsignatureradiusbonusbonus.py deleted file mode 100644 index 34ee9918f..000000000 --- a/eos/effects/scriptsignatureradiusbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptSignatureRadiusBonusBonus -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" -runTime = "early" - - -def handler(fit, module, context): - module.boostItemAttr("signatureRadiusBonus", module.getModifiedChargeAttr("signatureRadiusBonusBonus")) diff --git a/eos/effects/scriptspeedboostfactorbonusbonus.py b/eos/effects/scriptspeedboostfactorbonusbonus.py deleted file mode 100644 index 7ead7eb03..000000000 --- a/eos/effects/scriptspeedboostfactorbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptSpeedBoostFactorBonusBonus -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" -runTime = "early" - - -def handler(fit, module, context): - module.boostItemAttr("speedBoostFactorBonus", module.getModifiedChargeAttr("speedBoostFactorBonusBonus")) diff --git a/eos/effects/scriptspeedfactorbonusbonus.py b/eos/effects/scriptspeedfactorbonusbonus.py deleted file mode 100644 index f3d560d76..000000000 --- a/eos/effects/scriptspeedfactorbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptSpeedFactorBonusBonus -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" -runTime = "early" - - -def handler(fit, module, context): - module.boostItemAttr("speedFactorBonus", module.getModifiedChargeAttr("speedFactorBonusBonus")) diff --git a/eos/effects/scriptstandupwarpscram.py b/eos/effects/scriptstandupwarpscram.py deleted file mode 100644 index 6f03786d6..000000000 --- a/eos/effects/scriptstandupwarpscram.py +++ /dev/null @@ -1,11 +0,0 @@ -# scriptStandupWarpScram -# -# Used by: -# Charge: Standup Focused Warp Scrambling Script - -type = "passive" -runTime = "early" - - -def handler(fit, src, context, *args, **kwargs): - src.boostItemAttr("maxRange", src.getModifiedChargeAttr("warpScrambleRangeBonus")) diff --git a/eos/effects/scripttrackingcomputerfalloffbonusbonus.py b/eos/effects/scripttrackingcomputerfalloffbonusbonus.py deleted file mode 100644 index b2c054606..000000000 --- a/eos/effects/scripttrackingcomputerfalloffbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptTrackingComputerFalloffBonusBonus -# -# Used by: -# Charges from group: Tracking Disruption Script (2 of 2) -# Charges from group: Tracking Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("falloffBonus", module.getModifiedChargeAttr("falloffBonusBonus")) diff --git a/eos/effects/scripttrackingcomputermaxrangebonusbonus.py b/eos/effects/scripttrackingcomputermaxrangebonusbonus.py deleted file mode 100644 index c3b510a7b..000000000 --- a/eos/effects/scripttrackingcomputermaxrangebonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptTrackingComputerMaxRangeBonusBonus -# -# Used by: -# Charges from group: Tracking Disruption Script (2 of 2) -# Charges from group: Tracking Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("maxRangeBonus", module.getModifiedChargeAttr("maxRangeBonusBonus")) diff --git a/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py b/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py deleted file mode 100644 index ff256a748..000000000 --- a/eos/effects/scripttrackingcomputertrackingspeedbonusbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# scriptTrackingComputerTrackingSpeedBonusBonus -# -# Used by: -# Charges from group: Tracking Disruption Script (2 of 2) -# Charges from group: Tracking Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("trackingSpeedBonus", module.getModifiedChargeAttr("trackingSpeedBonusBonus")) diff --git a/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py b/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py deleted file mode 100644 index 4c224a0ef..000000000 --- a/eos/effects/scriptwarpdisruptionfieldgeneratorsetdisallowinempirespace.py +++ /dev/null @@ -1,9 +0,0 @@ -# scriptWarpDisruptionFieldGeneratorSetDisallowInEmpireSpace -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.forceItemAttr("disallowInEmpireSpace", module.getModifiedChargeAttr("disallowInEmpireSpace")) diff --git a/eos/effects/scriptwarpscramblerangebonus.py b/eos/effects/scriptwarpscramblerangebonus.py deleted file mode 100644 index cc253590b..000000000 --- a/eos/effects/scriptwarpscramblerangebonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# scriptWarpScrambleRangeBonus -# -# Used by: -# Charges from group: Warp Disruption Script (2 of 2) -type = "passive" - - -def handler(fit, module, context): - module.boostItemAttr("warpScrambleRange", module.getModifiedChargeAttr("warpScrambleRangeBonus")) diff --git a/eos/effects/selfrof.py b/eos/effects/selfrof.py deleted file mode 100644 index b9f0541f2..000000000 --- a/eos/effects/selfrof.py +++ /dev/null @@ -1,12 +0,0 @@ -# selfRof -# -# Used by: -# Skills named like: Missile Specialization (4 of 5) -# Skill: Rocket Specialization -# Skill: Torpedo Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill(skill), - "speed", skill.getModifiedItemAttr("rofBonus") * skill.level) diff --git a/eos/effects/selft2largehybridblasterdamagebonus.py b/eos/effects/selft2largehybridblasterdamagebonus.py deleted file mode 100644 index 929509540..000000000 --- a/eos/effects/selft2largehybridblasterdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2LargeHybridBlasterDamageBonus -# -# Used by: -# Skill: Large Blaster Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Blaster Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largehybridraildamagebonus.py b/eos/effects/selft2largehybridraildamagebonus.py deleted file mode 100644 index 6742d22d8..000000000 --- a/eos/effects/selft2largehybridraildamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2LargeHybridRailDamageBonus -# -# Used by: -# Skill: Large Railgun Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Railgun Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largelaserbeamdamagebonus.py b/eos/effects/selft2largelaserbeamdamagebonus.py deleted file mode 100644 index 0a4cbafde..000000000 --- a/eos/effects/selft2largelaserbeamdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2LargeLaserBeamDamageBonus -# -# Used by: -# Skill: Large Beam Laser Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Beam Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largelaserpulsedamagebonus.py b/eos/effects/selft2largelaserpulsedamagebonus.py deleted file mode 100644 index 4714dd913..000000000 --- a/eos/effects/selft2largelaserpulsedamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2LargeLaserPulseDamageBonus -# -# Used by: -# Skill: Large Pulse Laser Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Pulse Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largeprojectileacdamagebonus.py b/eos/effects/selft2largeprojectileacdamagebonus.py deleted file mode 100644 index 0b3e4c6e3..000000000 --- a/eos/effects/selft2largeprojectileacdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2LargeProjectileACDamageBonus -# -# Used by: -# Skill: Large Autocannon Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Autocannon Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2largeprojectileartydamagebonus.py b/eos/effects/selft2largeprojectileartydamagebonus.py deleted file mode 100644 index 245a64866..000000000 --- a/eos/effects/selft2largeprojectileartydamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2LargeProjectileArtyDamageBonus -# -# Used by: -# Skill: Large Artillery Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Artillery Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumhybridblasterdamagebonus.py b/eos/effects/selft2mediumhybridblasterdamagebonus.py deleted file mode 100644 index ca7dffdf5..000000000 --- a/eos/effects/selft2mediumhybridblasterdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2MediumHybridBlasterDamageBonus -# -# Used by: -# Skill: Medium Blaster Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Blaster Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumhybridraildamagebonus.py b/eos/effects/selft2mediumhybridraildamagebonus.py deleted file mode 100644 index 77b6c5abb..000000000 --- a/eos/effects/selft2mediumhybridraildamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2MediumHybridRailDamageBonus -# -# Used by: -# Skill: Medium Railgun Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Railgun Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumlaserbeamdamagebonus.py b/eos/effects/selft2mediumlaserbeamdamagebonus.py deleted file mode 100644 index e509d73de..000000000 --- a/eos/effects/selft2mediumlaserbeamdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2MediumLaserBeamDamageBonus -# -# Used by: -# Skill: Medium Beam Laser Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Beam Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumlaserpulsedamagebonus.py b/eos/effects/selft2mediumlaserpulsedamagebonus.py deleted file mode 100644 index 021493979..000000000 --- a/eos/effects/selft2mediumlaserpulsedamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2MediumLaserPulseDamageBonus -# -# Used by: -# Skill: Medium Pulse Laser Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Pulse Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumprojectileacdamagebonus.py b/eos/effects/selft2mediumprojectileacdamagebonus.py deleted file mode 100644 index a18d3914a..000000000 --- a/eos/effects/selft2mediumprojectileacdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2MediumProjectileACDamageBonus -# -# Used by: -# Skill: Medium Autocannon Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Autocannon Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2mediumprojectileartydamagebonus.py b/eos/effects/selft2mediumprojectileartydamagebonus.py deleted file mode 100644 index 8b091e5d8..000000000 --- a/eos/effects/selft2mediumprojectileartydamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2MediumProjectileArtyDamageBonus -# -# Used by: -# Skill: Medium Artillery Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Artillery Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallhybridblasterdamagebonus.py b/eos/effects/selft2smallhybridblasterdamagebonus.py deleted file mode 100644 index 3bc3b79c1..000000000 --- a/eos/effects/selft2smallhybridblasterdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2SmallHybridBlasterDamageBonus -# -# Used by: -# Skill: Small Blaster Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Blaster Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallhybridraildamagebonus.py b/eos/effects/selft2smallhybridraildamagebonus.py deleted file mode 100644 index 8da445f83..000000000 --- a/eos/effects/selft2smallhybridraildamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2SmallHybridRailDamageBonus -# -# Used by: -# Skill: Small Railgun Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Railgun Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smalllaserbeamdamagebonus.py b/eos/effects/selft2smalllaserbeamdamagebonus.py deleted file mode 100644 index b6cd4b2fd..000000000 --- a/eos/effects/selft2smalllaserbeamdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2SmallLaserBeamDamageBonus -# -# Used by: -# Skill: Small Beam Laser Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Beam Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smalllaserpulsedamagebonus.py b/eos/effects/selft2smalllaserpulsedamagebonus.py deleted file mode 100644 index 92a516038..000000000 --- a/eos/effects/selft2smalllaserpulsedamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2SmallLaserPulseDamageBonus -# -# Used by: -# Skill: Small Pulse Laser Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Pulse Laser Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallprojectileacdamagebonus.py b/eos/effects/selft2smallprojectileacdamagebonus.py deleted file mode 100644 index d86b1ed90..000000000 --- a/eos/effects/selft2smallprojectileacdamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2SmallProjectileACDamageBonus -# -# Used by: -# Skill: Small Autocannon Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Autocannon Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/selft2smallprojectileartydamagebonus.py b/eos/effects/selft2smallprojectileartydamagebonus.py deleted file mode 100644 index 52510d1cb..000000000 --- a/eos/effects/selft2smallprojectileartydamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# selfT2SmallProjectileArtyDamageBonus -# -# Used by: -# Skill: Small Artillery Specialization -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Artillery Specialization"), - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/sensorboosteractivepercentage.py b/eos/effects/sensorboosteractivepercentage.py deleted file mode 100644 index f79c16a57..000000000 --- a/eos/effects/sensorboosteractivepercentage.py +++ /dev/null @@ -1,19 +0,0 @@ -# sensorBoosterActivePercentage -# -# Used by: -# Modules from group: Sensor Booster (16 of 16) -type = "active" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True) - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True) - - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - fit.ship.boostItemAttr( - "scan{}Strength".format(scanType), - module.getModifiedItemAttr("scan{}StrengthPercent".format(scanType)), - stackingPenalties=True - ) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py b/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py deleted file mode 100644 index 244f84e2a..000000000 --- a/eos/effects/sensorcompensationsensorstrengthbonusgravimetric.py +++ /dev/null @@ -1,10 +0,0 @@ -# sensorCompensationSensorStrengthBonusGravimetric -# -# Used by: -# Skill: Gravimetric Sensor Compensation -type = "passive" - - -def handler(fit, container, context): - fit.ship.boostItemAttr("scanGravimetricStrength", - container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusladar.py b/eos/effects/sensorcompensationsensorstrengthbonusladar.py deleted file mode 100644 index b046ce046..000000000 --- a/eos/effects/sensorcompensationsensorstrengthbonusladar.py +++ /dev/null @@ -1,9 +0,0 @@ -# sensorCompensationSensorStrengthBonusLadar -# -# Used by: -# Skill: Ladar Sensor Compensation -type = "passive" - - -def handler(fit, container, context): - fit.ship.boostItemAttr("scanLadarStrength", container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py b/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py deleted file mode 100644 index 6306a2df6..000000000 --- a/eos/effects/sensorcompensationsensorstrengthbonusmagnetometric.py +++ /dev/null @@ -1,10 +0,0 @@ -# sensorCompensationSensorStrengthBonusMagnetometric -# -# Used by: -# Skill: Magnetometric Sensor Compensation -type = "passive" - - -def handler(fit, container, context): - fit.ship.boostItemAttr("scanMagnetometricStrength", - container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorcompensationsensorstrengthbonusradar.py b/eos/effects/sensorcompensationsensorstrengthbonusradar.py deleted file mode 100644 index 2df326dca..000000000 --- a/eos/effects/sensorcompensationsensorstrengthbonusradar.py +++ /dev/null @@ -1,9 +0,0 @@ -# sensorCompensationSensorStrengthBonusRadar -# -# Used by: -# Skill: Radar Sensor Compensation -type = "passive" - - -def handler(fit, container, context): - fit.ship.boostItemAttr("scanRadarStrength", container.getModifiedItemAttr("sensorStrengthBonus") * container.level) diff --git a/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py b/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py deleted file mode 100644 index f4d9c0886..000000000 --- a/eos/effects/sensorupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringsensorupgrades.py +++ /dev/null @@ -1,13 +0,0 @@ -# sensorUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringSensorUpgrades -# -# Used by: -# Implants named like: Zainou 'Gypsy' Electronics Upgrades EU (6 of 6) -# Modules named like: Liquid Cooled Electronics (8 of 8) -# Skill: Electronics Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Electronics Upgrades"), - "cpu", container.getModifiedItemAttr("cpuNeedBonus") * level) diff --git a/eos/effects/sentrydronedamagebonus.py b/eos/effects/sentrydronedamagebonus.py deleted file mode 100644 index cf8ec25b2..000000000 --- a/eos/effects/sentrydronedamagebonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# sentryDroneDamageBonus -# -# Used by: -# Modules named like: Sentry Damage Augmentor (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "damageMultiplier", module.getModifiedItemAttr("damageMultiplierBonus"), - stackingPenalties=True) diff --git a/eos/effects/servicemodulefullpowerhitpointpostassign.py b/eos/effects/servicemodulefullpowerhitpointpostassign.py deleted file mode 100644 index a4f574110..000000000 --- a/eos/effects/servicemodulefullpowerhitpointpostassign.py +++ /dev/null @@ -1,14 +0,0 @@ -# serviceModuleFullPowerHitpointPostAssign -# -# Used by: -# Structure Modules from group: Structure Citadel Service Module (2 of 2) -# Structure Modules from group: Structure Engineering Service Module (6 of 6) -# Structure Modules from group: Structure Navigation Service Module (3 of 3) -# Structure Modules from group: Structure Resource Processing Service Module (4 of 4) -# Structure Module: Standup Moon Drill I -type = "passive" -runTime = "early" - - -def handler(fit, src, context): - fit.ship.forceItemAttr("structureFullPowerStateHitpointMultiplier", src.getModifiedItemAttr("serviceModuleFullPowerStateHitpointMultiplier")) diff --git a/eos/effects/setbonusasklepian.py b/eos/effects/setbonusasklepian.py deleted file mode 100644 index 853626c7d..000000000 --- a/eos/effects/setbonusasklepian.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusAsklepian -# -# Used by: -# Implants named like: grade Asklepian (18 of 18) -runTime = "early" -type = "passive" - - -def handler(fit, src, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Cybernetics"), - "armorRepairBonus", src.getModifiedItemAttr("implantSetSerpentis2")) diff --git a/eos/effects/setbonusbloodraider.py b/eos/effects/setbonusbloodraider.py deleted file mode 100644 index 2b318f6f9..000000000 --- a/eos/effects/setbonusbloodraider.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusBloodraider -# -# Used by: -# Implants named like: grade Talisman (18 of 18) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "durationBonus", implant.getModifiedItemAttr("implantSetBloodraider")) diff --git a/eos/effects/setbonusbloodraidernosferatu.py b/eos/effects/setbonusbloodraidernosferatu.py deleted file mode 100644 index 81d37c598..000000000 --- a/eos/effects/setbonusbloodraidernosferatu.py +++ /dev/null @@ -1,10 +0,0 @@ -# setBonusBloodraiderNosferatu -# -# Used by: -# Implants named like: grade Talisman (15 of 18) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems"), - "duration", implant.getModifiedItemAttr("durationBonus")) diff --git a/eos/effects/setbonuschristmasagilitybonus.py b/eos/effects/setbonuschristmasagilitybonus.py deleted file mode 100644 index d8f472b50..000000000 --- a/eos/effects/setbonuschristmasagilitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusChristmasAgilityBonus -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "agilityBonus", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmasarmorhpbonus2.py b/eos/effects/setbonuschristmasarmorhpbonus2.py deleted file mode 100644 index b9eb11557..000000000 --- a/eos/effects/setbonuschristmasarmorhpbonus2.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusChristmasArmorHPBonus2 -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "armorHpBonus2", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmasbonusvelocity.py b/eos/effects/setbonuschristmasbonusvelocity.py deleted file mode 100644 index eb2ae35bc..000000000 --- a/eos/effects/setbonuschristmasbonusvelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusChristmasBonusVelocity -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "implantBonusVelocity", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmascapacitorcapacity.py b/eos/effects/setbonuschristmascapacitorcapacity.py deleted file mode 100644 index cb2a90ce1..000000000 --- a/eos/effects/setbonuschristmascapacitorcapacity.py +++ /dev/null @@ -1,12 +0,0 @@ -# setBonusChristmasCapacitorCapacity -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "capacitorCapacityBonus", - implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmascapacitorrecharge2.py b/eos/effects/setbonuschristmascapacitorrecharge2.py deleted file mode 100644 index 39e0d41b4..000000000 --- a/eos/effects/setbonuschristmascapacitorrecharge2.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusChristmasCapacitorRecharge2 -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "capRechargeBonus", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmascpuoutput.py b/eos/effects/setbonuschristmascpuoutput.py deleted file mode 100644 index 2c7d06990..000000000 --- a/eos/effects/setbonuschristmascpuoutput.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusChristmasCPUOutput -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "cpuOutputBonus2", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmaspowergrid.py b/eos/effects/setbonuschristmaspowergrid.py deleted file mode 100644 index 183356391..000000000 --- a/eos/effects/setbonuschristmaspowergrid.py +++ /dev/null @@ -1,12 +0,0 @@ -# setBonusChristmasPowergrid -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "powerEngineeringOutputBonus", - implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonuschristmasshieldcapacitybonus.py b/eos/effects/setbonuschristmasshieldcapacitybonus.py deleted file mode 100644 index e9212fe68..000000000 --- a/eos/effects/setbonuschristmasshieldcapacitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusChristmasShieldCapacityBonus -# -# Used by: -# Implants named like: Genolution Core Augmentation CA (4 of 4) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Special Edition Implant", - "shieldCapacityBonus", implant.getModifiedItemAttr("implantSetChristmas")) diff --git a/eos/effects/setbonusguristas.py b/eos/effects/setbonusguristas.py deleted file mode 100644 index 18a708dc1..000000000 --- a/eos/effects/setbonusguristas.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusGuristas -# -# Used by: -# Implants named like: grade Crystal (18 of 18) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "shieldBoostMultiplier", implant.getModifiedItemAttr("implantSetGuristas")) diff --git a/eos/effects/setbonusmordus.py b/eos/effects/setbonusmordus.py deleted file mode 100644 index 6db3789dd..000000000 --- a/eos/effects/setbonusmordus.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusMordus -# -# Used by: -# Implants named like: grade Centurion (12 of 12) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "rangeSkillBonus", implant.getModifiedItemAttr("implantSetMordus")) diff --git a/eos/effects/setbonusore.py b/eos/effects/setbonusore.py deleted file mode 100644 index 0d5a83233..000000000 --- a/eos/effects/setbonusore.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusOre -# -# Used by: -# Implants named like: grade Harvest (12 of 12) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "maxRangeBonus", implant.getModifiedItemAttr("implantSetORE")) diff --git a/eos/effects/setbonussansha.py b/eos/effects/setbonussansha.py deleted file mode 100644 index 48c915f1d..000000000 --- a/eos/effects/setbonussansha.py +++ /dev/null @@ -1,12 +0,0 @@ -# setBonusSansha -# -# Used by: -# Implants named like: grade Slave (18 of 18) -# Implant: High-grade Halo Omega -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda target: target.item.requiresSkill("Cybernetics"), - "armorHpBonus", implant.getModifiedItemAttr("implantSetSansha") or 1) diff --git a/eos/effects/setbonusserpentis.py b/eos/effects/setbonusserpentis.py deleted file mode 100644 index 96f1048f5..000000000 --- a/eos/effects/setbonusserpentis.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusSerpentis -# -# Used by: -# Implants named like: grade Snake (18 of 18) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "velocityBonus", implant.getModifiedItemAttr("implantSetSerpentis")) diff --git a/eos/effects/setbonussisters.py b/eos/effects/setbonussisters.py deleted file mode 100644 index a63079741..000000000 --- a/eos/effects/setbonussisters.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusSisters -# -# Used by: -# Implants named like: grade Virtue (12 of 12) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "scanStrengthBonus", implant.getModifiedItemAttr("implantSetSisters")) diff --git a/eos/effects/setbonussyndicate.py b/eos/effects/setbonussyndicate.py deleted file mode 100644 index ffb9c754f..000000000 --- a/eos/effects/setbonussyndicate.py +++ /dev/null @@ -1,12 +0,0 @@ -# setBonusSyndicate -# -# Used by: -# Implants named like: grade Edge (12 of 12) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "boosterAttributeModifier", - implant.getModifiedItemAttr("implantSetSyndicate")) diff --git a/eos/effects/setbonusthukker.py b/eos/effects/setbonusthukker.py deleted file mode 100644 index 78313ac62..000000000 --- a/eos/effects/setbonusthukker.py +++ /dev/null @@ -1,11 +0,0 @@ -# setBonusThukker -# -# Used by: -# Implants named like: grade Nomad (12 of 12) -runTime = "early" -type = "passive" - - -def handler(fit, implant, context): - fit.appliedImplants.filteredItemMultiply(lambda mod: mod.item.group.name == "Cyberimplant", - "agilityBonus", implant.getModifiedItemAttr("implantSetThukker")) diff --git a/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py b/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py deleted file mode 100644 index 7b53ea966..000000000 --- a/eos/effects/sharpshooterrangeskillbonuspostpercentmaxrangelocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,13 +0,0 @@ -# sharpshooterRangeSkillBonusPostPercentMaxRangeLocationShipModulesRequiringGunnery -# -# Used by: -# Implants named like: Frentix Booster (4 of 4) -# Implants named like: Zainou 'Deadeye' Sharpshooter ST (6 of 6) -# Skill: Sharpshooter -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", container.getModifiedItemAttr("rangeSkillBonus") * level) diff --git a/eos/effects/shieldboostamplifier.py b/eos/effects/shieldboostamplifier.py deleted file mode 100644 index 6b37ba157..000000000 --- a/eos/effects/shieldboostamplifier.py +++ /dev/null @@ -1,13 +0,0 @@ -# shieldBoostAmplifier -# -# Used by: -# Modules from group: Capacitor Power Relay (20 of 20) -# Modules from group: Shield Boost Amplifier (25 of 25) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", module.getModifiedItemAttr("shieldBoostMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/shieldboostamplifierpassive.py b/eos/effects/shieldboostamplifierpassive.py deleted file mode 100644 index 182c04acf..000000000 --- a/eos/effects/shieldboostamplifierpassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# shieldBoostAmplifierPassive -# -# Used by: -# Implants named like: grade Crystal (15 of 18) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", container.getModifiedItemAttr("shieldBoostMultiplier")) diff --git a/eos/effects/shieldboostamplifierpassivebooster.py b/eos/effects/shieldboostamplifierpassivebooster.py deleted file mode 100644 index 30432474d..000000000 --- a/eos/effects/shieldboostamplifierpassivebooster.py +++ /dev/null @@ -1,13 +0,0 @@ -# shieldBoostAmplifierPassiveBooster -# -# Used by: -# Implants named like: Agency 'Hardshell' TB Dose (4 of 4) -# Implants named like: Blue Pill Booster (5 of 5) -# Implant: Antipharmakon Thureo -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", container.getModifiedItemAttr("shieldBoostMultiplier")) diff --git a/eos/effects/shieldboosterdurationbonusshieldskills.py b/eos/effects/shieldboosterdurationbonusshieldskills.py deleted file mode 100644 index 4840594c1..000000000 --- a/eos/effects/shieldboosterdurationbonusshieldskills.py +++ /dev/null @@ -1,11 +0,0 @@ -# shieldBoosterDurationBonusShieldSkills -# -# Used by: -# Modules named like: Core Defense Operational Solidifier (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Operation") or mod.item.requiresSkill("Capital Shield Operation"), - "duration", module.getModifiedItemAttr("durationSkillBonus")) diff --git a/eos/effects/shieldboosting.py b/eos/effects/shieldboosting.py deleted file mode 100644 index 808e2f1b0..000000000 --- a/eos/effects/shieldboosting.py +++ /dev/null @@ -1,12 +0,0 @@ -# shieldBoosting -# -# Used by: -# Modules from group: Shield Booster (97 of 97) -runTime = "late" -type = "active" - - -def handler(fit, module, context): - amount = module.getModifiedItemAttr("shieldBonus") - speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", amount / speed) diff --git a/eos/effects/shieldcapacityaddpassive.py b/eos/effects/shieldcapacityaddpassive.py deleted file mode 100644 index d5c520560..000000000 --- a/eos/effects/shieldcapacityaddpassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# shieldCapacityAddPassive -# -# Used by: -# Subsystems from group: Defensive Systems (8 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("shieldCapacity", module.getModifiedItemAttr("shieldCapacity")) diff --git a/eos/effects/shieldcapacitybonusonline.py b/eos/effects/shieldcapacitybonusonline.py deleted file mode 100644 index cba8f70bb..000000000 --- a/eos/effects/shieldcapacitybonusonline.py +++ /dev/null @@ -1,10 +0,0 @@ -# shieldCapacityBonusOnline -# -# Used by: -# Modules from group: Shield Extender (36 of 36) -# Modules from group: Shield Resistance Amplifier (88 of 88) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("shieldCapacity", module.getModifiedItemAttr("capacityBonus")) diff --git a/eos/effects/shieldcapacitymultiply.py b/eos/effects/shieldcapacitymultiply.py deleted file mode 100644 index 3c9aeea6d..000000000 --- a/eos/effects/shieldcapacitymultiply.py +++ /dev/null @@ -1,14 +0,0 @@ -# shieldCapacityMultiply -# -# Used by: -# Modules from group: Capacitor Power Relay (20 of 20) -# Modules from group: Power Diagnostic System (23 of 23) -# Modules from group: Reactor Control Unit (22 of 22) -# Modules named like: Flux Coil (12 of 12) -type = "passive" - - -def handler(fit, module, context): - # We default this to None as there are times when the source attribute doesn't exist (for example, Cap Power Relay). - # It will return 0 as it doesn't exist, which would nullify whatever the target attribute is - fit.ship.multiplyItemAttr("shieldCapacity", module.getModifiedItemAttr("shieldCapacityMultiplier", None)) diff --git a/eos/effects/shieldcommandburstbonusics3.py b/eos/effects/shieldcommandburstbonusics3.py deleted file mode 100644 index 1a61286b7..000000000 --- a/eos/effects/shieldcommandburstbonusics3.py +++ /dev/null @@ -1,18 +0,0 @@ -# shieldCommandBurstBonusICS3 -# -# Used by: -# Ship: Orca -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("shipBonusICS3"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("shipBonusICS3"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("shipBonusICS3"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("shipBonusICS3"), skill="Industrial Command Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "buffDuration", - src.getModifiedItemAttr("shipBonusICS3"), skill="Industrial Command Ships") diff --git a/eos/effects/shieldcommandburstbonusorecapital3.py b/eos/effects/shieldcommandburstbonusorecapital3.py deleted file mode 100644 index 8ad4a3462..000000000 --- a/eos/effects/shieldcommandburstbonusorecapital3.py +++ /dev/null @@ -1,18 +0,0 @@ -# shieldCommandBurstBonusORECapital3 -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff4Value", - src.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "buffDuration", - src.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff1Value", - src.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff3Value", - src.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff2Value", - src.getModifiedItemAttr("shipBonusORECapital3"), skill="Capital Industrial Ships") diff --git a/eos/effects/shieldcommanddurationbonus.py b/eos/effects/shieldcommanddurationbonus.py deleted file mode 100644 index a7425a974..000000000 --- a/eos/effects/shieldcommanddurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shieldCommandDurationBonus -# -# Used by: -# Skill: Shield Command -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/shieldcommandmindlink.py b/eos/effects/shieldcommandmindlink.py deleted file mode 100644 index fac7a7720..000000000 --- a/eos/effects/shieldcommandmindlink.py +++ /dev/null @@ -1,18 +0,0 @@ -# shieldCommandMindlink -# -# Used by: -# Implants from group: Cyber Leadership (4 of 10) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "buffDuration", - src.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/shieldcommandstrengthbonus.py b/eos/effects/shieldcommandstrengthbonus.py deleted file mode 100644 index b95fe66df..000000000 --- a/eos/effects/shieldcommandstrengthbonus.py +++ /dev/null @@ -1,17 +0,0 @@ -# shieldCommandStrengthBonus -# -# Used by: -# Skill: Shield Command Specialist -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Shield Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) diff --git a/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py b/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py deleted file mode 100644 index 6161d3fe0..000000000 --- a/eos/effects/shieldemmisionsystemscapneedbonuspostpercentcapacitorneedlocationshipmodulesrequiringshieldemmisionsystems.py +++ /dev/null @@ -1,12 +0,0 @@ -# shieldEmmisionSystemsCapNeedBonusPostPercentCapacitorNeedLocationShipModulesRequiringShieldEmmisionSystems -# -# Used by: -# Implants named like: Zainou 'Gnome' Shield Emission Systems SE (6 of 6) -# Skill: Shield Emission Systems -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", container.getModifiedItemAttr("capNeedBonus") * level) diff --git a/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py b/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py deleted file mode 100644 index d9209c608..000000000 --- a/eos/effects/shieldmanagementshieldcapacitybonuspostpercentcapacitylocationshipgroupshield.py +++ /dev/null @@ -1,14 +0,0 @@ -# shieldManagementShieldCapacityBonusPostPercentCapacityLocationShipGroupShield -# -# Used by: -# Implants named like: Zainou 'Gnome' Shield Management SM (6 of 6) -# Modules named like: Core Defense Field Extender (8 of 8) -# Implant: Genolution Core Augmentation CA-3 -# Implant: Sansha Modified 'Gnome' Implant -# Skill: Shield Management -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("shieldCapacity", container.getModifiedItemAttr("shieldCapacityBonus") * level) diff --git a/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py b/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py deleted file mode 100644 index 266c3776d..000000000 --- a/eos/effects/shieldoperationrechargeratebonuspostpercentonline.py +++ /dev/null @@ -1,9 +0,0 @@ -# shieldOperationRechargeratebonusPostPercentOnline -# -# Used by: -# Modules from group: Shield Power Relay (6 of 6) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("shieldRechargeRate", module.getModifiedItemAttr("rechargeratebonus") or 0) diff --git a/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py b/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py deleted file mode 100644 index 919fc8b79..000000000 --- a/eos/effects/shieldoperationrechargeratebonuspostpercentrechargeratelocationshipgroupshield.py +++ /dev/null @@ -1,13 +0,0 @@ -# shieldOperationRechargeratebonusPostPercentRechargeRateLocationShipGroupShield -# -# Used by: -# Implants named like: Zainou 'Gnome' Shield Operation SP (6 of 6) -# Modules named like: Core Defense Field Purger (8 of 8) -# Implant: Sansha Modified 'Gnome' Implant -# Skill: Shield Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("shieldRechargeRate", container.getModifiedItemAttr("rechargeratebonus") * level) diff --git a/eos/effects/shieldoperationskillboostcapacitorneedbonus.py b/eos/effects/shieldoperationskillboostcapacitorneedbonus.py deleted file mode 100644 index da4472bd4..000000000 --- a/eos/effects/shieldoperationskillboostcapacitorneedbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# shieldOperationSkillBoostCapacitorNeedBonus -# -# Used by: -# Modules named like: Core Defense Capacitor Safeguard (8 of 8) -# Skill: Shield Compensation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "capacitorNeed", container.getModifiedItemAttr("shieldBoostCapacitorBonus") * level) diff --git a/eos/effects/shieldtransportcpuneedbonuseffect.py b/eos/effects/shieldtransportcpuneedbonuseffect.py deleted file mode 100644 index 427290a3f..000000000 --- a/eos/effects/shieldtransportcpuneedbonuseffect.py +++ /dev/null @@ -1,10 +0,0 @@ -# shieldTransportCpuNeedBonusEffect -# -# Used by: -# Ships from group: Logistics (3 of 7) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "cpu", - src.getModifiedItemAttr("shieldTransportCpuNeedBonus")) diff --git a/eos/effects/shieldtransporterfalloffbonus.py b/eos/effects/shieldtransporterfalloffbonus.py deleted file mode 100644 index 94e282490..000000000 --- a/eos/effects/shieldtransporterfalloffbonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# shieldTransporterFalloffBonus -# -# Used by: -# Variations of ship: Bantam (2 of 2) -# Variations of ship: Burst (2 of 2) -# Ship: Osprey -# Ship: Scythe -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", "falloffEffectiveness", - src.getModifiedItemAttr("falloffBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Shield Booster", - "falloffEffectiveness", src.getModifiedItemAttr("falloffBonus")) diff --git a/eos/effects/shieldtransportermaxrangebonus.py b/eos/effects/shieldtransportermaxrangebonus.py deleted file mode 100644 index 8c4ce976e..000000000 --- a/eos/effects/shieldtransportermaxrangebonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# shieldTransporterMaxRangeBonus -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -# Ship: Osprey -# Ship: Rorqual -# Ship: Scythe -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Shield Booster", "maxRange", - ship.getModifiedItemAttr("maxRangeBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Ancillary Remote Shield Booster", "maxRange", - ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py b/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py deleted file mode 100644 index 2d59d3d3a..000000000 --- a/eos/effects/shieldupgradespowerneedbonuspostpercentpowerlocationshipmodulesrequiringshieldupgrades.py +++ /dev/null @@ -1,13 +0,0 @@ -# shieldUpgradesPowerNeedBonusPostPercentPowerLocationShipModulesRequiringShieldUpgrades -# -# Used by: -# Implants named like: Zainou 'Gnome' Shield Upgrades SU (6 of 6) -# Modules named like: Core Defense Charge Economizer (8 of 8) -# Skill: Shield Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), - "power", container.getModifiedItemAttr("powerNeedBonus") * level) diff --git a/eos/effects/shipadvancedspaceshipcommandagilitybonus.py b/eos/effects/shipadvancedspaceshipcommandagilitybonus.py deleted file mode 100644 index 34b19d1ac..000000000 --- a/eos/effects/shipadvancedspaceshipcommandagilitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipAdvancedSpaceshipCommandAgilityBonus -# -# Used by: -# Items from market group: Ships > Capital Ships (40 of 40) -type = "passive" - - -def handler(fit, ship, context): - skillName = "Advanced Spaceship Command" - skill = fit.character.getSkill(skillName) - fit.ship.boostItemAttr("agility", skill.getModifiedItemAttr("agilityBonus"), skill=skillName) diff --git a/eos/effects/shipagilitybonusgc1.py b/eos/effects/shipagilitybonusgc1.py deleted file mode 100644 index 6c08d527f..000000000 --- a/eos/effects/shipagilitybonusgc1.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipAgilityBonusGC1 -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("agility", src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py b/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py deleted file mode 100644 index d19155457..000000000 --- a/eos/effects/shiparmoremandexpandkinandthmresistanceac2.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipArmorEMAndExpAndkinAndThmResistanceAC2 -# -# Used by: -# Ships named like: Stratios (2 of 2) -# Ship: Sacrilege -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("Em", "Explosive", "Kinetic", "Thermal") - for damageType in damageTypes: - fit.ship.boostItemAttr("armor{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("shipBonusAC2"), - skill="Amarr Cruiser") diff --git a/eos/effects/shiparmoremresistance1abc1.py b/eos/effects/shiparmoremresistance1abc1.py deleted file mode 100644 index 98ccf2fc8..000000000 --- a/eos/effects/shiparmoremresistance1abc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipArmorEMResistance1ABC1 -# -# Used by: -# Variations of ship: Prophecy (2 of 2) -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmoremresistanceac2.py b/eos/effects/shiparmoremresistanceac2.py deleted file mode 100644 index 3b38e626e..000000000 --- a/eos/effects/shiparmoremresistanceac2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipArmorEmResistanceAC2 -# -# Used by: -# Ship: Maller -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shiparmoremresistanceaf1.py b/eos/effects/shiparmoremresistanceaf1.py deleted file mode 100644 index ba757a558..000000000 --- a/eos/effects/shiparmoremresistanceaf1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipArmorEMResistanceAF1 -# -# Used by: -# Ship: Astero -# Ship: Malice -# Ship: Punisher -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiparmoremresistancemc2.py b/eos/effects/shiparmoremresistancemc2.py deleted file mode 100644 index 777c51ec0..000000000 --- a/eos/effects/shiparmoremresistancemc2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipArmorEmResistanceMC2 -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmoremresistancepbc2.py b/eos/effects/shiparmoremresistancepbc2.py deleted file mode 100644 index 8fcf35f0e..000000000 --- a/eos/effects/shiparmoremresistancepbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorEMResistancePBC2 -# -# Used by: -# Ship: Drekavac -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), - skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmoremresistancerookie.py b/eos/effects/shiparmoremresistancerookie.py deleted file mode 100644 index 41cb429c6..000000000 --- a/eos/effects/shiparmoremresistancerookie.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipArmorEMResistanceRookie -# -# Used by: -# Ship: Devoter -# Ship: Gold Magnate -# Ship: Impairor -# Ship: Phobos -# Ship: Silver Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorEmDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shiparmorexplosiveresistance1abc1.py b/eos/effects/shiparmorexplosiveresistance1abc1.py deleted file mode 100644 index f1a9d3a72..000000000 --- a/eos/effects/shiparmorexplosiveresistance1abc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipArmorExplosiveResistance1ABC1 -# -# Used by: -# Variations of ship: Prophecy (2 of 2) -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmorexplosiveresistanceac2.py b/eos/effects/shiparmorexplosiveresistanceac2.py deleted file mode 100644 index 76c98a057..000000000 --- a/eos/effects/shiparmorexplosiveresistanceac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorExplosiveResistanceAC2 -# -# Used by: -# Ship: Maller -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), - skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorexplosiveresistancemc2.py b/eos/effects/shiparmorexplosiveresistancemc2.py deleted file mode 100644 index f6ef4cfab..000000000 --- a/eos/effects/shiparmorexplosiveresistancemc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorExplosiveResistanceMC2 -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmorexplosiveresistancepbc2.py b/eos/effects/shiparmorexplosiveresistancepbc2.py deleted file mode 100644 index 588feda67..000000000 --- a/eos/effects/shiparmorexplosiveresistancepbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorExplosiveResistancePBC2 -# -# Used by: -# Ship: Drekavac -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), - skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmorexresistanceaf1.py b/eos/effects/shiparmorexresistanceaf1.py deleted file mode 100644 index 448ed9fd3..000000000 --- a/eos/effects/shiparmorexresistanceaf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipArmorEXResistanceAF1 -# -# Used by: -# Ship: Astero -# Ship: Malice -# Ship: Punisher -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), - skill="Amarr Frigate") diff --git a/eos/effects/shiparmorexresistancerookie.py b/eos/effects/shiparmorexresistancerookie.py deleted file mode 100644 index a3ffd9333..000000000 --- a/eos/effects/shiparmorexresistancerookie.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipArmorEXResistanceRookie -# -# Used by: -# Ship: Devoter -# Ship: Gold Magnate -# Ship: Impairor -# Ship: Phobos -# Ship: Silver Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shiparmorhitpointsac1.py b/eos/effects/shiparmorhitpointsac1.py deleted file mode 100644 index 853eed5d1..000000000 --- a/eos/effects/shiparmorhitpointsac1.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipArmorHitPointsAC1 -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorHP", src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorhpac2.py b/eos/effects/shiparmorhpac2.py deleted file mode 100644 index a801712c2..000000000 --- a/eos/effects/shiparmorhpac2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipArmorHpAC2 -# -# Used by: -# Ship: Augoror Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorHP", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorkineticresistance1abc1.py b/eos/effects/shiparmorkineticresistance1abc1.py deleted file mode 100644 index 191e50025..000000000 --- a/eos/effects/shiparmorkineticresistance1abc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipArmorKineticResistance1ABC1 -# -# Used by: -# Variations of ship: Prophecy (2 of 2) -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmorkineticresistanceac2.py b/eos/effects/shiparmorkineticresistanceac2.py deleted file mode 100644 index 5c96ab767..000000000 --- a/eos/effects/shiparmorkineticresistanceac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorKineticResistanceAC2 -# -# Used by: -# Ship: Maller -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), - skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorkineticresistancemc2.py b/eos/effects/shiparmorkineticresistancemc2.py deleted file mode 100644 index fe1303bd5..000000000 --- a/eos/effects/shiparmorkineticresistancemc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorKineticResistanceMC2 -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmorkineticresistancepbc2.py b/eos/effects/shiparmorkineticresistancepbc2.py deleted file mode 100644 index 0248e9374..000000000 --- a/eos/effects/shiparmorkineticresistancepbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorKineticResistancePBC2 -# -# Used by: -# Ship: Drekavac -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), - skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmorknresistanceaf1.py b/eos/effects/shiparmorknresistanceaf1.py deleted file mode 100644 index d5d9ea4ac..000000000 --- a/eos/effects/shiparmorknresistanceaf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipArmorKNResistanceAF1 -# -# Used by: -# Ship: Astero -# Ship: Malice -# Ship: Punisher -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), - skill="Amarr Frigate") diff --git a/eos/effects/shiparmorknresistancerookie.py b/eos/effects/shiparmorknresistancerookie.py deleted file mode 100644 index 9932056eb..000000000 --- a/eos/effects/shiparmorknresistancerookie.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipArmorKNResistanceRookie -# -# Used by: -# Ship: Devoter -# Ship: Gold Magnate -# Ship: Impairor -# Ship: Phobos -# Ship: Silver Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shiparmorrepairing1gbc2.py b/eos/effects/shiparmorrepairing1gbc2.py deleted file mode 100644 index 1c4ca9d09..000000000 --- a/eos/effects/shiparmorrepairing1gbc2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipArmorRepairing1GBC2 -# -# Used by: -# Variations of ship: Myrmidon (2 of 2) -# Ship: Astarte -# Ship: Brutix -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGBC2"), - skill="Gallente Battlecruiser") diff --git a/eos/effects/shiparmorrepairinggf2.py b/eos/effects/shiparmorrepairinggf2.py deleted file mode 100644 index e4da7c41d..000000000 --- a/eos/effects/shiparmorrepairinggf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipArmorRepairingGF2 -# -# Used by: -# Ship: Incursus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGF2"), - skill="Gallente Frigate") diff --git a/eos/effects/shiparmorrepairingrookie.py b/eos/effects/shiparmorrepairingrookie.py deleted file mode 100644 index 91a18b03d..000000000 --- a/eos/effects/shiparmorrepairingrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorRepairingRookie -# -# Used by: -# Ship: Velator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("rookieArmorRepBonus")) diff --git a/eos/effects/shiparmorresistanceaf1.py b/eos/effects/shiparmorresistanceaf1.py deleted file mode 100644 index 651595294..000000000 --- a/eos/effects/shiparmorresistanceaf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipArmorResistanceAF1 -# -# Used by: -# Ship: Malediction -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("Em", "Explosive", "Kinetic", "Thermal") - for damageType in damageTypes: - fit.ship.boostItemAttr("armor{0}DamageResonance".format(damageType), ship.getModifiedItemAttr("shipBonusAF"), - skill="Amarr Frigate") diff --git a/eos/effects/shiparmorthermalresistanceac2.py b/eos/effects/shiparmorthermalresistanceac2.py deleted file mode 100644 index 3e3dab2cf..000000000 --- a/eos/effects/shiparmorthermalresistanceac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorThermalResistanceAC2 -# -# Used by: -# Ship: Maller -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusAC2"), - skill="Amarr Cruiser") diff --git a/eos/effects/shiparmorthermalresistancemc2.py b/eos/effects/shiparmorthermalresistancemc2.py deleted file mode 100644 index 85ca998f0..000000000 --- a/eos/effects/shiparmorthermalresistancemc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorThermalResistanceMC2 -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shiparmorthermalresistancepbc2.py b/eos/effects/shiparmorthermalresistancepbc2.py deleted file mode 100644 index 99149f084..000000000 --- a/eos/effects/shiparmorthermalresistancepbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipArmorThermalResistancePBC2 -# -# Used by: -# Ship: Drekavac -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusPBC2"), - skill="Precursor Battlecruiser") diff --git a/eos/effects/shiparmorthermresistance1abc1.py b/eos/effects/shiparmorthermresistance1abc1.py deleted file mode 100644 index b03dffabe..000000000 --- a/eos/effects/shiparmorthermresistance1abc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipArmorThermResistance1ABC1 -# -# Used by: -# Variations of ship: Prophecy (2 of 2) -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiparmorthresistanceaf1.py b/eos/effects/shiparmorthresistanceaf1.py deleted file mode 100644 index 3e01abbc3..000000000 --- a/eos/effects/shiparmorthresistanceaf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipArmorTHResistanceAF1 -# -# Used by: -# Ship: Astero -# Ship: Malice -# Ship: Punisher -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("shipBonusAF"), - skill="Amarr Frigate") diff --git a/eos/effects/shiparmorthresistancerookie.py b/eos/effects/shiparmorthresistancerookie.py deleted file mode 100644 index 3c4a8f289..000000000 --- a/eos/effects/shiparmorthresistancerookie.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipArmorTHResistanceRookie -# -# Used by: -# Ship: Devoter -# Ship: Gold Magnate -# Ship: Impairor -# Ship: Phobos -# Ship: Silver Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", ship.getModifiedItemAttr("rookieArmorResistanceBonus")) diff --git a/eos/effects/shipbonusaf1torpedoexplosionvelocity.py b/eos/effects/shipbonusaf1torpedoexplosionvelocity.py deleted file mode 100644 index d3be58566..000000000 --- a/eos/effects/shipbonusaf1torpedoexplosionvelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAF1TorpedoExplosionVelocity -# -# Used by: -# Ship: Purifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusaf1torpedoflighttime.py b/eos/effects/shipbonusaf1torpedoflighttime.py deleted file mode 100644 index 09b679710..000000000 --- a/eos/effects/shipbonusaf1torpedoflighttime.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAF1TorpedoFlightTime -# -# Used by: -# Ship: Purifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosionDelay", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusafterburnercapneedatf.py b/eos/effects/shipbonusafterburnercapneedatf.py deleted file mode 100644 index 2b3561611..000000000 --- a/eos/effects/shipbonusafterburnercapneedatf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAfterburnerCapNeedATF -# -# Used by: -# Ship: Freki -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "capacitorNeed", ship.getModifiedItemAttr("shipBonusATF1")) diff --git a/eos/effects/shipbonusafterburnerspeedfactor2cb.py b/eos/effects/shipbonusafterburnerspeedfactor2cb.py deleted file mode 100644 index f4a0fe196..000000000 --- a/eos/effects/shipbonusafterburnerspeedfactor2cb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAfterburnerSpeedFactor2CB -# -# Used by: -# Ship: Nightmare -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusafterburnerspeedfactorcc2.py b/eos/effects/shipbonusafterburnerspeedfactorcc2.py deleted file mode 100644 index 6a4dbfe2f..000000000 --- a/eos/effects/shipbonusafterburnerspeedfactorcc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusAfterburnerSpeedFactorCC2 -# -# Used by: -# Ship: Fiend -# Ship: Phantasm -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusafterburnerspeedfactorcf2.py b/eos/effects/shipbonusafterburnerspeedfactorcf2.py deleted file mode 100644 index b8c52da97..000000000 --- a/eos/effects/shipbonusafterburnerspeedfactorcf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusAfterburnerSpeedFactorCF2 -# -# Used by: -# Ship: Imp -# Ship: Succubus -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonusagilityai2.py b/eos/effects/shipbonusagilityai2.py deleted file mode 100644 index 16c2537ad..000000000 --- a/eos/effects/shipbonusagilityai2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusAgilityAI2 -# -# Used by: -# Ship: Sigil -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusAI2"), skill="Amarr Industrial") diff --git a/eos/effects/shipbonusagilityci2.py b/eos/effects/shipbonusagilityci2.py deleted file mode 100644 index 2fccf4074..000000000 --- a/eos/effects/shipbonusagilityci2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusAgilityCI2 -# -# Used by: -# Ship: Badger -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusCI2"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonusagilitygi2.py b/eos/effects/shipbonusagilitygi2.py deleted file mode 100644 index 3fc84bb06..000000000 --- a/eos/effects/shipbonusagilitygi2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusAgilityGI2 -# -# Used by: -# Ship: Nereus -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusGI2"), skill="Gallente Industrial") diff --git a/eos/effects/shipbonusagilitymi2.py b/eos/effects/shipbonusagilitymi2.py deleted file mode 100644 index 8273934e5..000000000 --- a/eos/effects/shipbonusagilitymi2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusAgilityMI2 -# -# Used by: -# Ship: Wreathe -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("agility", ship.getModifiedItemAttr("shipBonusMI2"), skill="Minmatar Industrial") diff --git a/eos/effects/shipbonusammobaymi2.py b/eos/effects/shipbonusammobaymi2.py deleted file mode 100644 index 8bb93aaeb..000000000 --- a/eos/effects/shipbonusammobaymi2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAmmoBayMI2 -# -# Used by: -# Ship: Hoarder -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("specialAmmoHoldCapacity", ship.getModifiedItemAttr("shipBonusMI2"), - skill="Minmatar Industrial") diff --git a/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py b/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py deleted file mode 100644 index 240b2f5ca..000000000 --- a/eos/effects/shipbonusaoevelocitycruiseandtorpedocb2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusAoeVelocityCruiseAndTorpedoCB2 -# -# Used by: -# Ship: Golem -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py b/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py deleted file mode 100644 index 1bf11ce1a..000000000 --- a/eos/effects/shipbonusaoevelocitycruisemissilesmb2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusAoeVelocityCruiseMissilesMB2 -# -# Used by: -# Ship: Typhoon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusMB2"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusaoevelocityrocketscd2.py b/eos/effects/shipbonusaoevelocityrocketscd2.py deleted file mode 100644 index 3513d9025..000000000 --- a/eos/effects/shipbonusaoevelocityrocketscd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAoeVelocityRocketsCD2 -# -# Used by: -# Ship: Corax -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusaoevelocityrocketsmf.py b/eos/effects/shipbonusaoevelocityrocketsmf.py deleted file mode 100644 index 3e7de55ef..000000000 --- a/eos/effects/shipbonusaoevelocityrocketsmf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAoeVelocityRocketsMF -# -# Used by: -# Ship: Vigil Fleet Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "aoeVelocity", - src.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusaoevelocitystandardmissilescd2.py b/eos/effects/shipbonusaoevelocitystandardmissilescd2.py deleted file mode 100644 index c49324439..000000000 --- a/eos/effects/shipbonusaoevelocitystandardmissilescd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusAoeVelocityStandardMissilesCD2 -# -# Used by: -# Ship: Corax -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusarmorrepairai2.py b/eos/effects/shipbonusarmorrepairai2.py deleted file mode 100644 index 172163178..000000000 --- a/eos/effects/shipbonusarmorrepairai2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusArmorRepairAI2 -# -# Used by: -# Ship: Impel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusAI2"), - skill="Amarr Industrial") diff --git a/eos/effects/shipbonusarmorrepairgi2.py b/eos/effects/shipbonusarmorrepairgi2.py deleted file mode 100644 index 3699a8b1e..000000000 --- a/eos/effects/shipbonusarmorrepairgi2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusArmorRepairGI2 -# -# Used by: -# Ship: Occator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGI2"), - skill="Gallente Industrial") diff --git a/eos/effects/shipbonusarmorrepamountgc2.py b/eos/effects/shipbonusarmorrepamountgc2.py deleted file mode 100644 index 622b593fd..000000000 --- a/eos/effects/shipbonusarmorrepamountgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusArmorRepAmountGC2 -# -# Used by: -# Ship: Deimos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGC2"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusarmorresistab.py b/eos/effects/shipbonusarmorresistab.py deleted file mode 100644 index cc3351844..000000000 --- a/eos/effects/shipbonusarmorresistab.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusArmorResistAB -# -# Used by: -# Ship: Abaddon -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - for type in ("Em", "Explosive", "Kinetic", "Thermal"): - fit.ship.boostItemAttr("armor{0}DamageResonance".format(type), ship.getModifiedItemAttr("shipBonusAB"), - skill="Amarr Battleship") diff --git a/eos/effects/shipbonuscapcapab.py b/eos/effects/shipbonuscapcapab.py deleted file mode 100644 index 73ccc8035..000000000 --- a/eos/effects/shipbonuscapcapab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCapCapAB -# -# Used by: -# Ship: Apocalypse Imperial Issue -# Ship: Paladin -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacitorCapacity", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuscargo2gi.py b/eos/effects/shipbonuscargo2gi.py deleted file mode 100644 index 85388f312..000000000 --- a/eos/effects/shipbonuscargo2gi.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusCargo2GI -# -# Used by: -# Variations of ship: Miasmos (3 of 4) -# Variations of ship: Nereus (2 of 2) -# Ship: Iteron Mark V -type = "passive" - - -def handler(fit, ship, context): - # TODO: investigate if we can live without such ifs or hardcoding - # Viator doesn't have GI bonus - if "shipBonusGI" in fit.ship.item.attributes: - bonusAttr = "shipBonusGI" - else: - bonusAttr = "shipBonusGI2" - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr(bonusAttr), skill="Gallente Industrial") diff --git a/eos/effects/shipbonuscargoci.py b/eos/effects/shipbonuscargoci.py deleted file mode 100644 index 3e80fb36a..000000000 --- a/eos/effects/shipbonuscargoci.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCargoCI -# -# Used by: -# Variations of ship: Badger (2 of 2) -# Ship: Tayra -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipBonusCI"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonuscargomi.py b/eos/effects/shipbonuscargomi.py deleted file mode 100644 index bc98e3615..000000000 --- a/eos/effects/shipbonuscargomi.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCargoMI -# -# Used by: -# Variations of ship: Wreathe (2 of 2) -# Ship: Mammoth -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipBonusMI"), skill="Minmatar Industrial") diff --git a/eos/effects/shipbonuscarriera1armorresists.py b/eos/effects/shipbonuscarriera1armorresists.py deleted file mode 100644 index ebda73d9d..000000000 --- a/eos/effects/shipbonuscarriera1armorresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusCarrierA1ArmorResists -# -# Used by: -# Ship: Archon -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusCarrierA1"), - skill="Amarr Carrier") diff --git a/eos/effects/shipbonuscarriera2supportfighterbonus.py b/eos/effects/shipbonuscarriera2supportfighterbonus.py deleted file mode 100644 index 02228b9c6..000000000 --- a/eos/effects/shipbonuscarriera2supportfighterbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusCarrierA2SupportFighterBonus -# -# Used by: -# Ship: Archon -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", - src.getModifiedItemAttr("shipBonusCarrierA2"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), - "fighterAbilityEnergyNeutralizerOptimalRange", - src.getModifiedItemAttr("shipBonusCarrierA2"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonuscarriera4warfarelinksbonus.py b/eos/effects/shipbonuscarriera4warfarelinksbonus.py deleted file mode 100644 index 31981bba6..000000000 --- a/eos/effects/shipbonuscarriera4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusCarrierA4WarfareLinksBonus -# -# Used by: -# Ship: Archon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusCarrierA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonuscarrierc1shieldresists.py b/eos/effects/shipbonuscarrierc1shieldresists.py deleted file mode 100644 index 4b8cd7101..000000000 --- a/eos/effects/shipbonuscarrierc1shieldresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusCarrierC1ShieldResists -# -# Used by: -# Ship: Chimera -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCarrierC1"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonuscarrierc2supportfighterbonus.py b/eos/effects/shipbonuscarrierc2supportfighterbonus.py deleted file mode 100644 index ff46a2d1d..000000000 --- a/eos/effects/shipbonuscarrierc2supportfighterbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusCarrierC2SupportFighterBonus -# -# Used by: -# Ship: Chimera -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", - src.getModifiedItemAttr("shipBonusCarrierC2"), skill="Caldari Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), - "fighterAbilityECMRangeOptimal", src.getModifiedItemAttr("shipBonusCarrierC2"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonuscarrierc4warfarelinksbonus.py b/eos/effects/shipbonuscarrierc4warfarelinksbonus.py deleted file mode 100644 index 4e19f6916..000000000 --- a/eos/effects/shipbonuscarrierc4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusCarrierC4WarfareLinksBonus -# -# Used by: -# Ship: Chimera -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusCarrierC4"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonuscarrierg1fighterdamage.py b/eos/effects/shipbonuscarrierg1fighterdamage.py deleted file mode 100644 index e17ff621a..000000000 --- a/eos/effects/shipbonuscarrierg1fighterdamage.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusCarrierG1FighterDamage -# -# Used by: -# Ship: Thanatos -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusCarrierG1"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg2supportfighterbonus.py b/eos/effects/shipbonuscarrierg2supportfighterbonus.py deleted file mode 100644 index e3bfe9f1f..000000000 --- a/eos/effects/shipbonuscarrierg2supportfighterbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusCarrierG2SupportFighterBonus -# -# Used by: -# Ship: Thanatos -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", - src.getModifiedItemAttr("shipBonusCarrierG2"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), - "fighterAbilityWarpDisruptionRange", src.getModifiedItemAttr("shipBonusCarrierG2"), - skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg3fighterhitpoints.py b/eos/effects/shipbonuscarrierg3fighterhitpoints.py deleted file mode 100644 index 4ad0965d0..000000000 --- a/eos/effects/shipbonuscarrierg3fighterhitpoints.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCarrierG3FighterHitpoints -# -# Used by: -# Ship: Thanatos -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", - src.getModifiedItemAttr("shipBonusCarrierG3"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierg4warfarelinksbonus.py b/eos/effects/shipbonuscarrierg4warfarelinksbonus.py deleted file mode 100644 index 05eb85c60..000000000 --- a/eos/effects/shipbonuscarrierg4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusCarrierG4WarfareLinksBonus -# -# Used by: -# Ship: Thanatos -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusCarrierG4"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonuscarrierm1fighterdamage.py b/eos/effects/shipbonuscarrierm1fighterdamage.py deleted file mode 100644 index 218947805..000000000 --- a/eos/effects/shipbonuscarrierm1fighterdamage.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusCarrierM1FighterDamage -# -# Used by: -# Ship: Nidhoggur -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusCarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm2supportfighterbonus.py b/eos/effects/shipbonuscarrierm2supportfighterbonus.py deleted file mode 100644 index e28ccbfef..000000000 --- a/eos/effects/shipbonuscarrierm2supportfighterbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusCarrierM2SupportFighterBonus -# -# Used by: -# Ship: Nidhoggur -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "fighterSquadronOrbitRange", - src.getModifiedItemAttr("shipBonusCarrierM2"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), - "fighterAbilityStasisWebifierOptimalRange", - src.getModifiedItemAttr("shipBonusCarrierM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm3fightervelocity.py b/eos/effects/shipbonuscarrierm3fightervelocity.py deleted file mode 100644 index 63d22459a..000000000 --- a/eos/effects/shipbonuscarrierm3fightervelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCarrierM3FighterVelocity -# -# Used by: -# Ship: Nidhoggur -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", - src.getModifiedItemAttr("shipBonusCarrierM3"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierm4warfarelinksbonus.py b/eos/effects/shipbonuscarrierm4warfarelinksbonus.py deleted file mode 100644 index 11592c9df..000000000 --- a/eos/effects/shipbonuscarrierm4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusCarrierM4WarfareLinksBonus -# -# Used by: -# Ship: Nidhoggur -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusCarrierM4"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonuscarrierrole1numwarfarelinks.py b/eos/effects/shipbonuscarrierrole1numwarfarelinks.py deleted file mode 100644 index fdfc77d94..000000000 --- a/eos/effects/shipbonuscarrierrole1numwarfarelinks.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCarrierRole1NumWarfareLinks -# -# Used by: -# Ships from group: Carrier (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", - src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonuscf1torpedoexplosionvelocity.py b/eos/effects/shipbonuscf1torpedoexplosionvelocity.py deleted file mode 100644 index 41a8b9db8..000000000 --- a/eos/effects/shipbonuscf1torpedoexplosionvelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCF1TorpedoExplosionVelocity -# -# Used by: -# Ship: Manticore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonuscf1torpedoflighttime.py b/eos/effects/shipbonuscf1torpedoflighttime.py deleted file mode 100644 index 2f00bd515..000000000 --- a/eos/effects/shipbonuscf1torpedoflighttime.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCF1TorpedoFlightTime -# -# Used by: -# Ship: Manticore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosionDelay", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonuscloakcpumc2.py b/eos/effects/shipbonuscloakcpumc2.py deleted file mode 100644 index ac83921f0..000000000 --- a/eos/effects/shipbonuscloakcpumc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCloakCpuMC2 -# -# Used by: -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), "cpu", - src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonuscloakcpumf1.py b/eos/effects/shipbonuscloakcpumf1.py deleted file mode 100644 index fe201e1df..000000000 --- a/eos/effects/shipbonuscloakcpumf1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCloakCpuMF1 -# -# Used by: -# Ship: Caedes -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Cloaking"), "cpu", - src.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonuscommanddestroyerrole1defenderbonus.py b/eos/effects/shipbonuscommanddestroyerrole1defenderbonus.py deleted file mode 100644 index cd2c1e733..000000000 --- a/eos/effects/shipbonuscommanddestroyerrole1defenderbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCommandDestroyerRole1DefenderBonus -# -# Used by: -# Ships from group: Command Destroyer (4 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Defender Missiles"), - "moduleReactivationDelay", ship.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonuscruisemissileemdmgmb.py b/eos/effects/shipbonuscruisemissileemdmgmb.py deleted file mode 100644 index 7a79cd089..000000000 --- a/eos/effects/shipbonuscruisemissileemdmgmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCruiseMissileEMDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruisemissileexplodmgmb.py b/eos/effects/shipbonuscruisemissileexplodmgmb.py deleted file mode 100644 index d4c413987..000000000 --- a/eos/effects/shipbonuscruisemissileexplodmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusCruiseMissileExploDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruisemissilekineticdmgmb.py b/eos/effects/shipbonuscruisemissilekineticdmgmb.py deleted file mode 100644 index 33fa55ff9..000000000 --- a/eos/effects/shipbonuscruisemissilekineticdmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusCruiseMissileKineticDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruisemissilethermdmgmb.py b/eos/effects/shipbonuscruisemissilethermdmgmb.py deleted file mode 100644 index 701dcf7e5..000000000 --- a/eos/effects/shipbonuscruisemissilethermdmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusCruiseMissileThermDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonuscruiserofmb.py b/eos/effects/shipbonuscruiserofmb.py deleted file mode 100644 index 34dc736d2..000000000 --- a/eos/effects/shipbonuscruiserofmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusCruiseROFMB -# -# Used by: -# Ship: Typhoon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", - "speed", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusdreadnoughta1damagebonus.py b/eos/effects/shipbonusdreadnoughta1damagebonus.py deleted file mode 100644 index 3b85fee4a..000000000 --- a/eos/effects/shipbonusdreadnoughta1damagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtA1DamageBonus -# -# Used by: -# Ship: Revelation -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusDreadnoughtA1"), skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughta1energywarfareamountbonus.py b/eos/effects/shipbonusdreadnoughta1energywarfareamountbonus.py deleted file mode 100644 index 86e7725ac..000000000 --- a/eos/effects/shipbonusdreadnoughta1energywarfareamountbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusDreadnoughtA1EnergyWarfareAmountBonus -# -# Used by: -# Ship: Chemosh -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", src.getModifiedItemAttr("shipBonusDreadnoughtA1"), skill="Amarr Dreadnought") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", src.getModifiedItemAttr("shipBonusDreadnoughtA1"), skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughta2armorresists.py b/eos/effects/shipbonusdreadnoughta2armorresists.py deleted file mode 100644 index 207c827f0..000000000 --- a/eos/effects/shipbonusdreadnoughta2armorresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusDreadnoughtA2ArmorResists -# -# Used by: -# Ship: Revelation -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), - skill="Amarr Dreadnought") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), - skill="Amarr Dreadnought") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), - skill="Amarr Dreadnought") - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtA2"), - skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughta3capneed.py b/eos/effects/shipbonusdreadnoughta3capneed.py deleted file mode 100644 index 1571c46bf..000000000 --- a/eos/effects/shipbonusdreadnoughta3capneed.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtA3CapNeed -# -# Used by: -# Ship: Revelation -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusDreadnoughtA3"), skill="Amarr Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtc1damagebonus.py b/eos/effects/shipbonusdreadnoughtc1damagebonus.py deleted file mode 100644 index 9d06fd5db..000000000 --- a/eos/effects/shipbonusdreadnoughtc1damagebonus.py +++ /dev/null @@ -1,32 +0,0 @@ -# shipBonusDreadnoughtC1DamageBonus -# -# Used by: -# Ship: Phoenix -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtC1"), skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtc2shieldresists.py b/eos/effects/shipbonusdreadnoughtc2shieldresists.py deleted file mode 100644 index 6a533902c..000000000 --- a/eos/effects/shipbonusdreadnoughtc2shieldresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusDreadnoughtC2ShieldResists -# -# Used by: -# Variations of ship: Phoenix (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), - skill="Caldari Dreadnought") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), - skill="Caldari Dreadnought") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), - skill="Caldari Dreadnought") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusDreadnoughtC2"), - skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtc3reloadbonus.py b/eos/effects/shipbonusdreadnoughtc3reloadbonus.py deleted file mode 100644 index 8ba0cc3fc..000000000 --- a/eos/effects/shipbonusdreadnoughtc3reloadbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtC3ReloadBonus -# -# Used by: -# Ship: Phoenix -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), "reloadTime", - src.getModifiedItemAttr("shipBonusDreadnoughtC3"), skill="Caldari Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg1damagebonus.py b/eos/effects/shipbonusdreadnoughtg1damagebonus.py deleted file mode 100644 index d6d5b9074..000000000 --- a/eos/effects/shipbonusdreadnoughtg1damagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtG1DamageBonus -# -# Used by: -# Ship: Moros -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg1kinthermdamagebonus.py b/eos/effects/shipbonusdreadnoughtg1kinthermdamagebonus.py deleted file mode 100644 index e79593c44..000000000 --- a/eos/effects/shipbonusdreadnoughtg1kinthermdamagebonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# shipBonusDreadnoughtG1KinThermDamageBonus -# -# Used by: -# Ship: Caiman -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusDreadnoughtG1"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg2rofbonus.py b/eos/effects/shipbonusdreadnoughtg2rofbonus.py deleted file mode 100644 index b109e3e30..000000000 --- a/eos/effects/shipbonusdreadnoughtg2rofbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtG2ROFBonus -# -# Used by: -# Variations of ship: Moros (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "speed", - src.getModifiedItemAttr("shipBonusDreadnoughtG2"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtg3repairtime.py b/eos/effects/shipbonusdreadnoughtg3repairtime.py deleted file mode 100644 index 39b99c0f5..000000000 --- a/eos/effects/shipbonusdreadnoughtg3repairtime.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtG3RepairTime -# -# Used by: -# Ship: Moros -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "duration", - src.getModifiedItemAttr("shipBonusDreadnoughtG3"), skill="Gallente Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm1damagebonus.py b/eos/effects/shipbonusdreadnoughtm1damagebonus.py deleted file mode 100644 index c1de5b9f4..000000000 --- a/eos/effects/shipbonusdreadnoughtm1damagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtM1DamageBonus -# -# Used by: -# Ship: Naglfar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm1webrangebonus.py b/eos/effects/shipbonusdreadnoughtm1webrangebonus.py deleted file mode 100644 index f79762142..000000000 --- a/eos/effects/shipbonusdreadnoughtm1webrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtM1WebRangeBonus -# -# Used by: -# Ship: Chemosh -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm1webstrengthbonus.py b/eos/effects/shipbonusdreadnoughtm1webstrengthbonus.py deleted file mode 100644 index c822336ba..000000000 --- a/eos/effects/shipbonusdreadnoughtm1webstrengthbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtM1WebStrengthBonus -# -# Used by: -# Ship: Vehement -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", - src.getModifiedItemAttr("shipBonusDreadnoughtM1"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm2rofbonus.py b/eos/effects/shipbonusdreadnoughtm2rofbonus.py deleted file mode 100644 index c183f3c7b..000000000 --- a/eos/effects/shipbonusdreadnoughtm2rofbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtM2ROFBonus -# -# Used by: -# Ship: Naglfar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "speed", - src.getModifiedItemAttr("shipBonusDreadnoughtM2"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdreadnoughtm3repairtime.py b/eos/effects/shipbonusdreadnoughtm3repairtime.py deleted file mode 100644 index 0e5ca87f9..000000000 --- a/eos/effects/shipbonusdreadnoughtm3repairtime.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDreadnoughtM3RepairTime -# -# Used by: -# Ship: Naglfar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "duration", - src.getModifiedItemAttr("shipBonusDreadnoughtM2"), skill="Minmatar Dreadnought") diff --git a/eos/effects/shipbonusdronearmorhitpointsab.py b/eos/effects/shipbonusdronearmorhitpointsab.py deleted file mode 100644 index 4753c8f3f..000000000 --- a/eos/effects/shipbonusdronearmorhitpointsab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneArmorHitPointsAB -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdronearmorhitpointsgf2.py b/eos/effects/shipbonusdronearmorhitpointsgf2.py deleted file mode 100644 index 89cdf8e30..000000000 --- a/eos/effects/shipbonusdronearmorhitpointsgf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneArmorHitpointsGF2 -# -# Used by: -# Ship: Ishkur -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronedamagegf2.py b/eos/effects/shipbonusdronedamagegf2.py deleted file mode 100644 index 5f71d4b0f..000000000 --- a/eos/effects/shipbonusdronedamagegf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneDamageGF2 -# -# Used by: -# Ship: Utu -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronedamagemultiplierab.py b/eos/effects/shipbonusdronedamagemultiplierab.py deleted file mode 100644 index 3825f9bb3..000000000 --- a/eos/effects/shipbonusdronedamagemultiplierab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneDamageMultiplierAB -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdronedamagemultiplierabc2.py b/eos/effects/shipbonusdronedamagemultiplierabc2.py deleted file mode 100644 index b93e05392..000000000 --- a/eos/effects/shipbonusdronedamagemultiplierabc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneDamageMultiplierABC2 -# -# Used by: -# Ship: Prophecy -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shipbonusdronedamagemultiplierac2.py b/eos/effects/shipbonusdronedamagemultiplierac2.py deleted file mode 100644 index 24e284817..000000000 --- a/eos/effects/shipbonusdronedamagemultiplierac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneDamageMultiplierAC2 -# -# Used by: -# Variations of ship: Arbitrator (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusdronedamagemultiplierad1.py b/eos/effects/shipbonusdronedamagemultiplierad1.py deleted file mode 100644 index 3112585a8..000000000 --- a/eos/effects/shipbonusdronedamagemultiplierad1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneDamageMultiplierAD1 -# -# Used by: -# Variations of ship: Dragoon (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusdronedamagemultipliergb2.py b/eos/effects/shipbonusdronedamagemultipliergb2.py deleted file mode 100644 index 19ea8bdde..000000000 --- a/eos/effects/shipbonusdronedamagemultipliergb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusDroneDamageMultiplierGB2 -# -# Used by: -# Variations of ship: Dominix (3 of 3) -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGB2"), - skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdronedamagemultipliergbc1.py b/eos/effects/shipbonusdronedamagemultipliergbc1.py deleted file mode 100644 index b1f3abe8e..000000000 --- a/eos/effects/shipbonusdronedamagemultipliergbc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneDamageMultiplierGBC1 -# -# Used by: -# Variations of ship: Myrmidon (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC1"), - skill="Gallente Battlecruiser") diff --git a/eos/effects/shipbonusdronedamagemultipliergc2.py b/eos/effects/shipbonusdronedamagemultipliergc2.py deleted file mode 100644 index 9585f7590..000000000 --- a/eos/effects/shipbonusdronedamagemultipliergc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusDroneDamageMultiplierGC2 -# -# Used by: -# Ships named like: Stratios (2 of 2) -# Ship: Vexor -# Ship: Vexor Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronedamagemultipliergd1.py b/eos/effects/shipbonusdronedamagemultipliergd1.py deleted file mode 100644 index 28ba5adfc..000000000 --- a/eos/effects/shipbonusdronedamagemultipliergd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneDamageMultiplierGD1 -# -# Used by: -# Variations of ship: Algos (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusdronedamagemultiplierrookie.py b/eos/effects/shipbonusdronedamagemultiplierrookie.py deleted file mode 100644 index 23c9a4b5b..000000000 --- a/eos/effects/shipbonusdronedamagemultiplierrookie.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusDroneDamageMultiplierRookie -# -# Used by: -# Ship: Gnosis -# Ship: Praxis -# Ship: Sunesis -# Ship: Taipan -# Ship: Velator -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", ship.getModifiedItemAttr("rookieDroneBonus")) diff --git a/eos/effects/shipbonusdronehitpointsabc2.py b/eos/effects/shipbonusdronehitpointsabc2.py deleted file mode 100644 index b1738a300..000000000 --- a/eos/effects/shipbonusdronehitpointsabc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneHitpointsABC2 -# -# Used by: -# Ship: Prophecy -type = "passive" - - -def handler(fit, ship, context): - for layer in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - layer, ship.getModifiedItemAttr("shipBonusABC2"), skill="Amarr Battlecruiser") diff --git a/eos/effects/shipbonusdronehitpointsad1.py b/eos/effects/shipbonusdronehitpointsad1.py deleted file mode 100644 index 4015c8f2e..000000000 --- a/eos/effects/shipbonusdronehitpointsad1.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusDroneHitpointsAD1 -# -# Used by: -# Variations of ship: Dragoon (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", - src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", - src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", - src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusdronehitpointsfixedac2.py b/eos/effects/shipbonusdronehitpointsfixedac2.py deleted file mode 100644 index b761c859b..000000000 --- a/eos/effects/shipbonusdronehitpointsfixedac2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneHitpointsFixedAC2 -# -# Used by: -# Variations of ship: Arbitrator (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - for type in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - type, ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusdronehitpointsgb2.py b/eos/effects/shipbonusdronehitpointsgb2.py deleted file mode 100644 index 9a591a4bc..000000000 --- a/eos/effects/shipbonusdronehitpointsgb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusDroneHitpointsGB2 -# -# Used by: -# Variations of ship: Dominix (3 of 3) -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - for type in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - type, ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdronehitpointsgbc1.py b/eos/effects/shipbonusdronehitpointsgbc1.py deleted file mode 100644 index 36f77064e..000000000 --- a/eos/effects/shipbonusdronehitpointsgbc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneHitpointsGBC1 -# -# Used by: -# Variations of ship: Myrmidon (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - for layer in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - layer, ship.getModifiedItemAttr("shipBonusGBC1"), skill="Gallente Battlecruiser") diff --git a/eos/effects/shipbonusdronehitpointsgc2.py b/eos/effects/shipbonusdronehitpointsgc2.py deleted file mode 100644 index 8dabc04f0..000000000 --- a/eos/effects/shipbonusdronehitpointsgc2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusDroneHitpointsGC2 -# -# Used by: -# Ships named like: Stratios (2 of 2) -# Ship: Vexor -# Ship: Vexor Navy Issue -type = "passive" - - -def handler(fit, ship, context): - for type in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - type, ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronehitpointsgd1.py b/eos/effects/shipbonusdronehitpointsgd1.py deleted file mode 100644 index e82e28b1a..000000000 --- a/eos/effects/shipbonusdronehitpointsgd1.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusDroneHitpointsGD1 -# -# Used by: -# Variations of ship: Algos (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", - src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", - src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", - src.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusdronehitpointsgf.py b/eos/effects/shipbonusdronehitpointsgf.py deleted file mode 100644 index 62058ca89..000000000 --- a/eos/effects/shipbonusdronehitpointsgf.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusDroneHitpointsGF -# -# Used by: -# Ship: Astero -# Ship: Maulus Navy Issue -# Ship: Tristan -type = "passive" - - -def handler(fit, ship, context): - for layer in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - layer, ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronehitpointsgf2.py b/eos/effects/shipbonusdronehitpointsgf2.py deleted file mode 100644 index a2e993f1b..000000000 --- a/eos/effects/shipbonusdronehitpointsgf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneHitpointsGF2 -# -# Used by: -# Ship: Ishkur -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "hp", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronehitpointsrookie.py b/eos/effects/shipbonusdronehitpointsrookie.py deleted file mode 100644 index 3862e2144..000000000 --- a/eos/effects/shipbonusdronehitpointsrookie.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusDroneHitpointsRookie -# -# Used by: -# Variations of ship: Procurer (2 of 2) -# Ship: Gnosis -# Ship: Praxis -# Ship: Sunesis -# Ship: Taipan -# Ship: Velator -type = "passive" - - -def handler(fit, ship, context): - for type in ("shieldCapacity", "armorHP", "hp"): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - type, ship.getModifiedItemAttr("rookieDroneBonus")) diff --git a/eos/effects/shipbonusdronehpdamageminingics4.py b/eos/effects/shipbonusdronehpdamageminingics4.py deleted file mode 100644 index 8b06c6dec..000000000 --- a/eos/effects/shipbonusdronehpdamageminingics4.py +++ /dev/null @@ -1,37 +0,0 @@ -# shipBonusDroneHPDamageMiningICS4 -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", - src.getModifiedItemAttr("shipBonusICS4"), - skill="Industrial Command Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", - src.getModifiedItemAttr("shipBonusICS4"), - skill="Industrial Command Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", - src.getModifiedItemAttr("shipBonusICS4"), - skill="Industrial Command Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "hp", - src.getModifiedItemAttr("shipBonusICS4"), - skill="Industrial Command Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", - src.getModifiedItemAttr("shipBonusICS4"), - skill="Industrial Command Ships" - ) diff --git a/eos/effects/shipbonusdronehpdamageminingorecapital4.py b/eos/effects/shipbonusdronehpdamageminingorecapital4.py deleted file mode 100644 index 8cd53cd81..000000000 --- a/eos/effects/shipbonusdronehpdamageminingorecapital4.py +++ /dev/null @@ -1,37 +0,0 @@ -# shipBonusDroneHPDamageMiningORECapital4 -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", - src.getModifiedItemAttr("shipBonusORECapital4"), - skill="Capital Industrial Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", - src.getModifiedItemAttr("shipBonusORECapital4"), - skill="Capital Industrial Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "armorHP", - src.getModifiedItemAttr("shipBonusORECapital4"), - skill="Capital Industrial Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "hp", - src.getModifiedItemAttr("shipBonusORECapital4"), - skill="Capital Industrial Ships" - ) - - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", - src.getModifiedItemAttr("shipBonusORECapital4"), - skill="Capital Industrial Ships" - ) diff --git a/eos/effects/shipbonusdroneiceharvestingics5.py b/eos/effects/shipbonusdroneiceharvestingics5.py deleted file mode 100644 index 4119b36c7..000000000 --- a/eos/effects/shipbonusdroneiceharvestingics5.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusDroneIceHarvestingICS5 -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Ice Harvesting Drone Operation"), - "duration", - src.getModifiedItemAttr("shipBonusICS5"), - skill="Industrial Command Ships" - ) diff --git a/eos/effects/shipbonusdroneiceharvestingorecapital5.py b/eos/effects/shipbonusdroneiceharvestingorecapital5.py deleted file mode 100644 index 754ea3fe6..000000000 --- a/eos/effects/shipbonusdroneiceharvestingorecapital5.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusDroneIceHarvestingORECapital5 -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Ice Harvesting Drone Operation"), - "duration", - src.getModifiedItemAttr("shipBonusORECapital5"), - skill="Capital Industrial Ships" - ) diff --git a/eos/effects/shipbonusdroneiceharvestingrole.py b/eos/effects/shipbonusdroneiceharvestingrole.py deleted file mode 100644 index b45241f9f..000000000 --- a/eos/effects/shipbonusdroneiceharvestingrole.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneIceHarvestingRole -# -# Used by: -# Ship: Orca -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting Drone Operation"), "duration", - src.getModifiedItemAttr("roleBonusDroneIceHarvestingSpeed")) diff --git a/eos/effects/shipbonusdroneminingamountac2.py b/eos/effects/shipbonusdroneminingamountac2.py deleted file mode 100644 index 0fc338bf7..000000000 --- a/eos/effects/shipbonusdroneminingamountac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneMiningAmountAC2 -# -# Used by: -# Ship: Arbitrator -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "miningAmount", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusdroneminingamountgc2.py b/eos/effects/shipbonusdroneminingamountgc2.py deleted file mode 100644 index e1bbc1314..000000000 --- a/eos/effects/shipbonusdroneminingamountgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneMiningAmountGC2 -# -# Used by: -# Ship: Vexor -# Ship: Vexor Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdroneminingamountrole.py b/eos/effects/shipbonusdroneminingamountrole.py deleted file mode 100644 index 789754258..000000000 --- a/eos/effects/shipbonusdroneminingamountrole.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusDroneMiningAmountRole -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", - src.getModifiedItemAttr("roleBonusDroneMiningYield"), - ) diff --git a/eos/effects/shipbonusdronemwdboostgc.py b/eos/effects/shipbonusdronemwdboostgc.py deleted file mode 100644 index 617b0a7a5..000000000 --- a/eos/effects/shipbonusdronemwdboostgc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneMWDboostGC -# -# Used by: -# Ship: Vexor Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronemwdboostrole.py b/eos/effects/shipbonusdronemwdboostrole.py deleted file mode 100644 index a9960c71a..000000000 --- a/eos/effects/shipbonusdronemwdboostrole.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneMWDboostrole -# -# Used by: -# Ship: Algos -# Ship: Dragoon -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusdroneoptimalrangegb.py b/eos/effects/shipbonusdroneoptimalrangegb.py deleted file mode 100644 index 197aba8ac..000000000 --- a/eos/effects/shipbonusdroneoptimalrangegb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneOptimalRangeGB -# -# Used by: -# Ship: Dominix -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "maxRange", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdronerepairmc1.py b/eos/effects/shipbonusdronerepairmc1.py deleted file mode 100644 index 77cc9a69d..000000000 --- a/eos/effects/shipbonusdronerepairmc1.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusDroneRepairMC1 -# -# Used by: -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldBonus", - src.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "structureDamageAmount", - src.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorDamageAmount", - src.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusdroneshieldhitpointsab.py b/eos/effects/shipbonusdroneshieldhitpointsab.py deleted file mode 100644 index e0ed55589..000000000 --- a/eos/effects/shipbonusdroneshieldhitpointsab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneShieldHitPointsAB -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdroneshieldhitpointsgf2.py b/eos/effects/shipbonusdroneshieldhitpointsgf2.py deleted file mode 100644 index 4a4ca98ae..000000000 --- a/eos/effects/shipbonusdroneshieldhitpointsgf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneShieldHitpointsGF2 -# -# Used by: -# Ship: Ishkur -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusdronestructurehitpointsab.py b/eos/effects/shipbonusdronestructurehitpointsab.py deleted file mode 100644 index a37f00d0c..000000000 --- a/eos/effects/shipbonusdronestructurehitpointsab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneStructureHitPointsAB -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "hp", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusdronetrackingelitegunship2.py b/eos/effects/shipbonusdronetrackingelitegunship2.py deleted file mode 100644 index 20c82238a..000000000 --- a/eos/effects/shipbonusdronetrackingelitegunship2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneTrackingEliteGunship2 -# -# Used by: -# Ship: Ishkur -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "trackingSpeed", - src.getModifiedItemAttr("eliteBonusGunship2"), skill="Assault Frigates") diff --git a/eos/effects/shipbonusdronetrackinggb.py b/eos/effects/shipbonusdronetrackinggb.py deleted file mode 100644 index 8449ffc78..000000000 --- a/eos/effects/shipbonusdronetrackinggb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneTrackingGB -# -# Used by: -# Ship: Dominix -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonusdronetrackinggc.py b/eos/effects/shipbonusdronetrackinggc.py deleted file mode 100644 index c33d4f02f..000000000 --- a/eos/effects/shipbonusdronetrackinggc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusDroneTrackingGC -# -# Used by: -# Ship: Vexor Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusdronetrackinggf.py b/eos/effects/shipbonusdronetrackinggf.py deleted file mode 100644 index b98c308e0..000000000 --- a/eos/effects/shipbonusdronetrackinggf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusDroneTrackingGF -# -# Used by: -# Ship: Maulus Navy Issue -# Ship: Tristan -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Drones"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusecmstrengthbonuscc.py b/eos/effects/shipbonusecmstrengthbonuscc.py deleted file mode 100644 index 1eaf7ef56..000000000 --- a/eos/effects/shipbonusecmstrengthbonuscc.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusECMStrengthBonusCC -# -# Used by: -# Ship: Blackbird -type = "passive" - - -def handler(fit, ship, context): - for type in ("Gravimetric", "Magnetometric", "Ladar", "Radar"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scan{0}StrengthBonus".format(type), ship.getModifiedItemAttr("shipBonusCC"), - skill="Caldari Cruiser") diff --git a/eos/effects/shipbonuselitecover2torpedoemdamage.py b/eos/effects/shipbonuselitecover2torpedoemdamage.py deleted file mode 100644 index 89697d829..000000000 --- a/eos/effects/shipbonuselitecover2torpedoemdamage.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEliteCover2TorpedoEMDamage -# -# Used by: -# Ship: Purifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "emDamage", ship.getModifiedItemAttr("eliteBonusCovertOps2"), skill="Covert Ops") diff --git a/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py b/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py deleted file mode 100644 index 779189de1..000000000 --- a/eos/effects/shipbonuselitecover2torpedoexplosivedamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusEliteCover2TorpedoExplosiveDamage -# -# Used by: -# Ship: Hound -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosiveDamage", ship.getModifiedItemAttr("eliteBonusCovertOps2"), - skill="Covert Ops") diff --git a/eos/effects/shipbonuselitecover2torpedokineticdamage.py b/eos/effects/shipbonuselitecover2torpedokineticdamage.py deleted file mode 100644 index 5ed5f7a69..000000000 --- a/eos/effects/shipbonuselitecover2torpedokineticdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEliteCover2TorpedoKineticDamage -# -# Used by: -# Ship: Manticore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "kineticDamage", ship.getModifiedItemAttr("eliteBonusCovertOps2"), - skill="Covert Ops") diff --git a/eos/effects/shipbonuselitecover2torpedothermaldamage.py b/eos/effects/shipbonuselitecover2torpedothermaldamage.py deleted file mode 100644 index 358023fee..000000000 --- a/eos/effects/shipbonuselitecover2torpedothermaldamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusEliteCover2TorpedoThermalDamage -# -# Used by: -# Ship: Nemesis -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "thermalDamage", ship.getModifiedItemAttr("eliteBonusCovertOps2"), - skill="Covert Ops") diff --git a/eos/effects/shipbonusemarmorresistancead2.py b/eos/effects/shipbonusemarmorresistancead2.py deleted file mode 100644 index 745d64420..000000000 --- a/eos/effects/shipbonusemarmorresistancead2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusEMArmorResistanceAD2 -# -# Used by: -# Ship: Pontifex -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusemarmorresistancegd2.py b/eos/effects/shipbonusemarmorresistancegd2.py deleted file mode 100644 index 0c7feb03a..000000000 --- a/eos/effects/shipbonusemarmorresistancegd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEMArmorResistanceGD2 -# -# Used by: -# Ship: Magus -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), - skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusemmissiledamagecd1.py b/eos/effects/shipbonusemmissiledamagecd1.py deleted file mode 100644 index db491c2b4..000000000 --- a/eos/effects/shipbonusemmissiledamagecd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEMMissileDamageCD1 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", - src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusemmissiledmgmd1.py b/eos/effects/shipbonusemmissiledmgmd1.py deleted file mode 100644 index cab979332..000000000 --- a/eos/effects/shipbonusemmissiledmgmd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEMMissileDmgMD1 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "emDamage", - src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusemshieldresistancecb2.py b/eos/effects/shipbonusemshieldresistancecb2.py deleted file mode 100644 index f69913dfd..000000000 --- a/eos/effects/shipbonusemshieldresistancecb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusEmShieldResistanceCB2 -# -# Used by: -# Ship: Rattlesnake -# Ship: Rokh -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipbonusemshieldresistancemd2.py b/eos/effects/shipbonusemshieldresistancemd2.py deleted file mode 100644 index 526ad3caf..000000000 --- a/eos/effects/shipbonusemshieldresistancemd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEMShieldResistanceMD2 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusenergyneutfalloffab2.py b/eos/effects/shipbonusenergyneutfalloffab2.py deleted file mode 100644 index 7540842ce..000000000 --- a/eos/effects/shipbonusenergyneutfalloffab2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutFalloffAB2 -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergyneutfalloffac3.py b/eos/effects/shipbonusenergyneutfalloffac3.py deleted file mode 100644 index fe991894d..000000000 --- a/eos/effects/shipbonusenergyneutfalloffac3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutFalloffAC3 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAC3"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergyneutfalloffad1.py b/eos/effects/shipbonusenergyneutfalloffad1.py deleted file mode 100644 index 9f515fe44..000000000 --- a/eos/effects/shipbonusenergyneutfalloffad1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutFalloffAD1 -# -# Used by: -# Ship: Dragoon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergyneutfalloffaf3.py b/eos/effects/shipbonusenergyneutfalloffaf3.py deleted file mode 100644 index f2f20904d..000000000 --- a/eos/effects/shipbonusenergyneutfalloffaf3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutFalloffAF3 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonus3AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergyneutfalloffeaf3.py b/eos/effects/shipbonusenergyneutfalloffeaf3.py deleted file mode 100644 index 54a1a972a..000000000 --- a/eos/effects/shipbonusenergyneutfalloffeaf3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEnergyNeutFalloffEAF3 -# -# Used by: -# Ship: Sentinel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusElectronicAttackShip3"), - skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergyneutfalloffrs2.py b/eos/effects/shipbonusenergyneutfalloffrs2.py deleted file mode 100644 index 8299434e6..000000000 --- a/eos/effects/shipbonusenergyneutfalloffrs2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutFalloffRS2 -# -# Used by: -# Ship: Pilgrim -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyneutfalloffrs3.py b/eos/effects/shipbonusenergyneutfalloffrs3.py deleted file mode 100644 index 47434368d..000000000 --- a/eos/effects/shipbonusenergyneutfalloffrs3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutFalloffRS3 -# -# Used by: -# Ship: Curse -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyneutoptimalab.py b/eos/effects/shipbonusenergyneutoptimalab.py deleted file mode 100644 index c8a3351dc..000000000 --- a/eos/effects/shipbonusenergyneutoptimalab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutOptimalAB -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergyneutoptimalac1.py b/eos/effects/shipbonusenergyneutoptimalac1.py deleted file mode 100644 index 10d1d5291..000000000 --- a/eos/effects/shipbonusenergyneutoptimalac1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutOptimalAC1 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergyneutoptimalad2.py b/eos/effects/shipbonusenergyneutoptimalad2.py deleted file mode 100644 index de8d4804c..000000000 --- a/eos/effects/shipbonusenergyneutoptimalad2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutOptimalAD2 -# -# Used by: -# Ship: Dragoon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergyneutoptimalaf2.py b/eos/effects/shipbonusenergyneutoptimalaf2.py deleted file mode 100644 index f85f88f75..000000000 --- a/eos/effects/shipbonusenergyneutoptimalaf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutOptimalAF2 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergyneutoptimaleaf1.py b/eos/effects/shipbonusenergyneutoptimaleaf1.py deleted file mode 100644 index f78e0b1ea..000000000 --- a/eos/effects/shipbonusenergyneutoptimaleaf1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEnergyNeutOptimalEAF1 -# -# Used by: -# Ship: Sentinel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), - skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergyneutoptimalrs1.py b/eos/effects/shipbonusenergyneutoptimalrs1.py deleted file mode 100644 index f6141a967..000000000 --- a/eos/effects/shipbonusenergyneutoptimalrs1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutOptimalRS1 -# -# Used by: -# Ship: Curse -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergyneutoptimalrs3.py b/eos/effects/shipbonusenergyneutoptimalrs3.py deleted file mode 100644 index 9f7dab064..000000000 --- a/eos/effects/shipbonusenergyneutoptimalrs3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNeutOptimalRS3 -# -# Used by: -# Ship: Pilgrim -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "maxRange", - src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosfalloffab2.py b/eos/effects/shipbonusenergynosfalloffab2.py deleted file mode 100644 index 153506b06..000000000 --- a/eos/effects/shipbonusenergynosfalloffab2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosFalloffAB2 -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergynosfalloffac3.py b/eos/effects/shipbonusenergynosfalloffac3.py deleted file mode 100644 index 5bc01aab7..000000000 --- a/eos/effects/shipbonusenergynosfalloffac3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosFalloffAC3 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAC3"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergynosfalloffad1.py b/eos/effects/shipbonusenergynosfalloffad1.py deleted file mode 100644 index 1de9dcb6f..000000000 --- a/eos/effects/shipbonusenergynosfalloffad1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosFalloffAD1 -# -# Used by: -# Ship: Dragoon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergynosfalloffaf3.py b/eos/effects/shipbonusenergynosfalloffaf3.py deleted file mode 100644 index 9316fbb76..000000000 --- a/eos/effects/shipbonusenergynosfalloffaf3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosFalloffAF3 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonus3AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergynosfalloffeaf3.py b/eos/effects/shipbonusenergynosfalloffeaf3.py deleted file mode 100644 index 74f6b4ceb..000000000 --- a/eos/effects/shipbonusenergynosfalloffeaf3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEnergyNosFalloffEAF3 -# -# Used by: -# Ship: Sentinel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusElectronicAttackShip3"), - skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergynosfalloffrs2.py b/eos/effects/shipbonusenergynosfalloffrs2.py deleted file mode 100644 index 372b2f1c3..000000000 --- a/eos/effects/shipbonusenergynosfalloffrs2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosFalloffRS2 -# -# Used by: -# Ship: Pilgrim -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusReconShip2"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosfalloffrs3.py b/eos/effects/shipbonusenergynosfalloffrs3.py deleted file mode 100644 index d02b92b95..000000000 --- a/eos/effects/shipbonusenergynosfalloffrs3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosFalloffRS3 -# -# Used by: -# Ship: Curse -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosoptimalab.py b/eos/effects/shipbonusenergynosoptimalab.py deleted file mode 100644 index a3075262c..000000000 --- a/eos/effects/shipbonusenergynosoptimalab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosOptimalAB -# -# Used by: -# Ship: Armageddon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonusenergynosoptimalac1.py b/eos/effects/shipbonusenergynosoptimalac1.py deleted file mode 100644 index d2c101bbd..000000000 --- a/eos/effects/shipbonusenergynosoptimalac1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosOptimalAC1 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusenergynosoptimalad2.py b/eos/effects/shipbonusenergynosoptimalad2.py deleted file mode 100644 index 7d7e516b8..000000000 --- a/eos/effects/shipbonusenergynosoptimalad2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosOptimalAD2 -# -# Used by: -# Ship: Dragoon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusenergynosoptimalaf2.py b/eos/effects/shipbonusenergynosoptimalaf2.py deleted file mode 100644 index 4b6adf6f8..000000000 --- a/eos/effects/shipbonusenergynosoptimalaf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosOptimalAF2 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusenergynosoptimaleaf1.py b/eos/effects/shipbonusenergynosoptimaleaf1.py deleted file mode 100644 index 0de8a02d8..000000000 --- a/eos/effects/shipbonusenergynosoptimaleaf1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEnergyNosOptimalEAF1 -# -# Used by: -# Ship: Sentinel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("eliteBonusElectronicAttackShip1"), - skill="Electronic Attack Ships") diff --git a/eos/effects/shipbonusenergynosoptimalrs1.py b/eos/effects/shipbonusenergynosoptimalrs1.py deleted file mode 100644 index 8eaf6c305..000000000 --- a/eos/effects/shipbonusenergynosoptimalrs1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosOptimalRS1 -# -# Used by: -# Ship: Curse -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("eliteBonusReconShip1"), skill="Recon Ships") diff --git a/eos/effects/shipbonusenergynosoptimalrs3.py b/eos/effects/shipbonusenergynosoptimalrs3.py deleted file mode 100644 index 670f0c701..000000000 --- a/eos/effects/shipbonusenergynosoptimalrs3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEnergyNosOptimalRS3 -# -# Used by: -# Ship: Pilgrim -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("eliteBonusReconShip3"), skill="Recon Ships") diff --git a/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py b/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py deleted file mode 100644 index 0152e33bd..000000000 --- a/eos/effects/shipbonusewremotesensordampenerfalloffbonusgc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEwRemoteSensorDampenerFalloffBonusGC1 -# -# Used by: -# Ship: Celestis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusGC"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py deleted file mode 100644 index 7d1afd2ed..000000000 --- a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEwRemoteSensorDampenerMaxTargetRangeBonusGC2 -# -# Used by: -# Variations of ship: Celestis (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", ship.getModifiedItemAttr("shipBonusGC2"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py deleted file mode 100644 index bbfd54a57..000000000 --- a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusgf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusEwRemoteSensorDampenerMaxTargetRangeBonusGF2 -# -# Used by: -# Ship: Keres -# Ship: Maulus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", ship.getModifiedItemAttr("shipBonusGF2"), - skill="Gallente Frigate") diff --git a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py b/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py deleted file mode 100644 index 82fb26288..000000000 --- a/eos/effects/shipbonusewremotesensordampenermaxtargetrangebonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEwRemoteSensorDampenerMaxTargetRangeBonusRookie -# -# Used by: -# Ship: Velator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxTargetRangeBonus", ship.getModifiedItemAttr("rookieDampStrengthBonus")) diff --git a/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py b/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py deleted file mode 100644 index 2c87e50e9..000000000 --- a/eos/effects/shipbonusewremotesensordampeneroptimalbonusgc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEwRemoteSensorDampenerOptimalBonusGC1 -# -# Used by: -# Ship: Celestis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "maxRange", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py deleted file mode 100644 index b8b1259dc..000000000 --- a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusEwRemoteSensorDampenerScanResolutionBonusGC2 -# -# Used by: -# Variations of ship: Celestis (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", ship.getModifiedItemAttr("shipBonusGC2"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py deleted file mode 100644 index ede9c9d7e..000000000 --- a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusgf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusEwRemoteSensorDampenerScanResolutionBonusGF2 -# -# Used by: -# Ship: Keres -# Ship: Maulus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", ship.getModifiedItemAttr("shipBonusGF2"), - skill="Gallente Frigate") diff --git a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py b/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py deleted file mode 100644 index 6cc41c30d..000000000 --- a/eos/effects/shipbonusewremotesensordampenerscanresolutionbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusEwRemoteSensorDampenerScanResolutionBonusRookie -# -# Used by: -# Ship: Velator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "scanResolutionBonus", ship.getModifiedItemAttr("rookieDampStrengthBonus")) diff --git a/eos/effects/shipbonusewweapondisruptionstrengthac1.py b/eos/effects/shipbonusewweapondisruptionstrengthac1.py deleted file mode 100644 index 6ac7ea077..000000000 --- a/eos/effects/shipbonusewweapondisruptionstrengthac1.py +++ /dev/null @@ -1,22 +0,0 @@ -# shipBonusEwWeaponDisruptionStrengthAC1 -# -# Used by: -# Variations of ship: Arbitrator (3 of 3) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "missileVelocityBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeVelocityBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "explosionDelayBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeCloudSizeBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "trackingSpeedBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffBonus", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusewweapondisruptionstrengthaf2.py b/eos/effects/shipbonusewweapondisruptionstrengthaf2.py deleted file mode 100644 index d7955172b..000000000 --- a/eos/effects/shipbonusewweapondisruptionstrengthaf2.py +++ /dev/null @@ -1,22 +0,0 @@ -# shipBonusEwWeaponDisruptionStrengthAF2 -# -# Used by: -# Variations of ship: Crucifier (3 of 3) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "trackingSpeedBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "explosionDelayBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "maxRangeBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "falloffBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "missileVelocityBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeVelocityBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), "aoeCloudSizeBonus", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusexplosivearmorresistancead2.py b/eos/effects/shipbonusexplosivearmorresistancead2.py deleted file mode 100644 index a1e2cc1c8..000000000 --- a/eos/effects/shipbonusexplosivearmorresistancead2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusExplosiveArmorResistanceAD2 -# -# Used by: -# Ship: Pontifex -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), - skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusexplosivearmorresistancegd2.py b/eos/effects/shipbonusexplosivearmorresistancegd2.py deleted file mode 100644 index 37c731132..000000000 --- a/eos/effects/shipbonusexplosivearmorresistancegd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusExplosiveArmorResistanceGD2 -# -# Used by: -# Ship: Magus -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), - skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusexplosivemissiledamagecd1.py b/eos/effects/shipbonusexplosivemissiledamagecd1.py deleted file mode 100644 index b7c2293f7..000000000 --- a/eos/effects/shipbonusexplosivemissiledamagecd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusExplosiveMissileDamageCD1 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", src.getModifiedItemAttr("shipBonusCD1"), - skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusexplosivemissiledmgmd1.py b/eos/effects/shipbonusexplosivemissiledmgmd1.py deleted file mode 100644 index b6b2dd692..000000000 --- a/eos/effects/shipbonusexplosivemissiledmgmd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusExplosiveMissileDmgMD1 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", src.getModifiedItemAttr("shipBonusMD1"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusexplosiveshieldresistancecb2.py b/eos/effects/shipbonusexplosiveshieldresistancecb2.py deleted file mode 100644 index 8c1459e98..000000000 --- a/eos/effects/shipbonusexplosiveshieldresistancecb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusExplosiveShieldResistanceCB2 -# -# Used by: -# Ship: Rattlesnake -# Ship: Rokh -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipbonusexplosiveshieldresistancemd2.py b/eos/effects/shipbonusexplosiveshieldresistancemd2.py deleted file mode 100644 index b9f93788b..000000000 --- a/eos/effects/shipbonusexplosiveshieldresistancemd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusExplosiveShieldResistanceMD2 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusforceauxiliarya1nosferatudrainamount.py b/eos/effects/shipbonusforceauxiliarya1nosferatudrainamount.py deleted file mode 100644 index 113c0e899..000000000 --- a/eos/effects/shipbonusforceauxiliarya1nosferatudrainamount.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusForceAuxiliaryA1NosferatuDrainAmount -# -# Used by: -# Ship: Dagon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya1nosferaturangebonus.py b/eos/effects/shipbonusforceauxiliarya1nosferaturangebonus.py deleted file mode 100644 index f3a1d2a62..000000000 --- a/eos/effects/shipbonusforceauxiliarya1nosferaturangebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusForceAuxiliaryA1NosferatuRangeBonus -# -# Used by: -# Ship: Dagon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "maxRange", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "falloffEffectiveness", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py b/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py deleted file mode 100644 index 2ae2102d6..000000000 --- a/eos/effects/shipbonusforceauxiliarya1remoterepairandcapamount.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusForceAuxiliaryA1RemoteRepairAndCapAmount -# -# Used by: -# Ship: Apostle -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems") or - mod.item.requiresSkill("Capital Capacitor Emission Systems"), - "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), - skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or - mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryA1"), - skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya2armorresists.py b/eos/effects/shipbonusforceauxiliarya2armorresists.py deleted file mode 100644 index 38dc7efd9..000000000 --- a/eos/effects/shipbonusforceauxiliarya2armorresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusForceAuxiliaryA2ArmorResists -# -# Used by: -# Ship: Apostle -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryA2"), - skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py deleted file mode 100644 index 824f57069..000000000 --- a/eos/effects/shipbonusforceauxiliarya4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusForceAuxiliaryA4WarfareLinksBonus -# -# Used by: -# Ship: Apostle -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command") or - mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command") or - mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command") or - mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command") or - mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command") or - mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py b/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py deleted file mode 100644 index 952cbb532..000000000 --- a/eos/effects/shipbonusforceauxiliaryc1remoteboostandcapamount.py +++ /dev/null @@ -1,19 +0,0 @@ -# shipBonusForceAuxiliaryC1RemoteBoostAndCapAmount -# -# Used by: -# Ship: Minokawa -type = "passive" - - -def handler(fit, src, context): - if src.getModifiedItemAttr("shipBonusForceAuxiliaryC1") is None: - return # See GH Issue 1321 - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems") or - mod.item.requiresSkill("Capital Capacitor Emission Systems"), - "powerTransferAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryC1"), - skill="Caldari Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or - mod.item.requiresSkill("Capital Shield Emission Systems"), - "shieldBonus", src.getModifiedItemAttr("shipBonusForceAuxiliaryC1"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc2shieldresists.py b/eos/effects/shipbonusforceauxiliaryc2shieldresists.py deleted file mode 100644 index b18ae263a..000000000 --- a/eos/effects/shipbonusforceauxiliaryc2shieldresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusForceAuxiliaryC2ShieldResists -# -# Used by: -# Variations of ship: Minokawa (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusForceAuxiliaryC2"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py deleted file mode 100644 index fda300de2..000000000 --- a/eos/effects/shipbonusforceauxiliaryc4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusForceAuxiliaryC4WarfareLinksBonus -# -# Used by: -# Ship: Minokawa -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryC4"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py b/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py deleted file mode 100644 index 3ae370e41..000000000 --- a/eos/effects/shipbonusforceauxiliaryg1remotecycletime.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusForceAuxiliaryG1RemoteCycleTime -# -# Used by: -# Ship: Ninazu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or - mod.item.requiresSkill("Capital Shield Emission Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), - skill="Gallente Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or - mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), - skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg1remoteshieldboostamount.py b/eos/effects/shipbonusforceauxiliaryg1remoteshieldboostamount.py deleted file mode 100644 index 08c87ce85..000000000 --- a/eos/effects/shipbonusforceauxiliaryg1remoteshieldboostamount.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusForceAuxiliaryG1RemoteShieldBoostAmount -# -# Used by: -# Ship: Loggerhead -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Emission Systems"), "shieldBonus", - src.getModifiedItemAttr("shipBonusForceAuxiliaryG1"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py b/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py deleted file mode 100644 index bdbefdd49..000000000 --- a/eos/effects/shipbonusforceauxiliaryg2localrepairamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusForceAuxiliaryG2LocalRepairAmount -# -# Used by: -# Ship: Ninazu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), "armorDamageAmount", - src.getModifiedItemAttr("shipBonusForceAuxiliaryG2"), skill="Gallente Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), "armorDamageAmount", - src.getModifiedItemAttr("shipBonusForceAuxiliaryG2"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py deleted file mode 100644 index 63efca50e..000000000 --- a/eos/effects/shipbonusforceauxiliaryg4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusForceAuxiliaryG4WarfareLinksBonus -# -# Used by: -# Ship: Ninazu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryG4"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym1remotearmorrepairduration.py b/eos/effects/shipbonusforceauxiliarym1remotearmorrepairduration.py deleted file mode 100644 index fd4dca81a..000000000 --- a/eos/effects/shipbonusforceauxiliarym1remotearmorrepairduration.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusForceAuxiliaryM1RemoteArmorRepairDuration -# -# Used by: -# Ship: Dagon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym1remoteduration.py b/eos/effects/shipbonusforceauxiliarym1remoteduration.py deleted file mode 100644 index 71d8d8e07..000000000 --- a/eos/effects/shipbonusforceauxiliarym1remoteduration.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusForceAuxiliaryM1RemoteDuration -# -# Used by: -# Ship: Lif -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or - mod.item.requiresSkill("Capital Shield Emission Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), - skill="Minmatar Carrier") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") or - mod.item.requiresSkill("Capital Remote Armor Repair Systems"), - "duration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM1"), - skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym2localboostamount.py b/eos/effects/shipbonusforceauxiliarym2localboostamount.py deleted file mode 100644 index 2bff2d794..000000000 --- a/eos/effects/shipbonusforceauxiliarym2localboostamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusForceAuxiliaryM2LocalBoostAmount -# -# Used by: -# Ship: Lif -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Shield Operation"), "shieldBonus", - src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), "shieldBonus", - src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym2localrepairamount.py b/eos/effects/shipbonusforceauxiliarym2localrepairamount.py deleted file mode 100644 index 00531404a..000000000 --- a/eos/effects/shipbonusforceauxiliarym2localrepairamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusForceAuxiliaryM2LocalRepairAmount -# -# Used by: -# Ship: Dagon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusForceAuxiliaryM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py b/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py deleted file mode 100644 index df5b5181b..000000000 --- a/eos/effects/shipbonusforceauxiliarym4warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusForceAuxiliaryM4WarfareLinksBonus -# -# Used by: -# Ship: Lif -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusForceAuxiliaryM4"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py b/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py deleted file mode 100644 index 28ce0aedb..000000000 --- a/eos/effects/shipbonusfrigatesizedlightmissileexplosivedamagemd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusFrigateSizedLightMissileExplosiveDamageMD1 -# -# Used by: -# Ship: Talwar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMD1"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py b/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py deleted file mode 100644 index efb861fb9..000000000 --- a/eos/effects/shipbonusfrigatesizedmissilekineticdamagecd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusFrigateSizedMissileKineticDamageCD1 -# -# Used by: -# Ship: Corax -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCD1"), - skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusgf1torpedoflighttime.py b/eos/effects/shipbonusgf1torpedoflighttime.py deleted file mode 100644 index 7fe141ec6..000000000 --- a/eos/effects/shipbonusgf1torpedoflighttime.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusGF1TorpedoFlightTime -# -# Used by: -# Ship: Nemesis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosionDelay", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusgftorpedoexplosionvelocity.py b/eos/effects/shipbonusgftorpedoexplosionvelocity.py deleted file mode 100644 index d7cd8a67e..000000000 --- a/eos/effects/shipbonusgftorpedoexplosionvelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusGFTorpedoExplosionVelocity -# -# Used by: -# Ship: Nemesis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py b/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py deleted file mode 100644 index 59e546543..000000000 --- a/eos/effects/shipbonushamvelocityelitebonusheavygunship1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusHAMVelocityEliteBonusHeavyGunship1 -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonusheatdamageatf1.py b/eos/effects/shipbonusheatdamageatf1.py deleted file mode 100644 index d6dfc2597..000000000 --- a/eos/effects/shipbonusheatdamageatf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusHeatDamageATF1 -# -# Used by: -# Ship: Cambion -# Ship: Etana -# Ship: Utu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusATF1")) diff --git a/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py b/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py deleted file mode 100644 index 12e3673b4..000000000 --- a/eos/effects/shipbonusheavyassaultmissilealldamagemc2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusHeavyAssaultMissileAllDamageMC2 -# -# Used by: -# Ship: Rapier -# Ship: Scythe Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "explosive", "kinetic", "thermal"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusheavyassaultmissileemdamagecbc2.py b/eos/effects/shipbonusheavyassaultmissileemdamagecbc2.py deleted file mode 100644 index dc9dfef75..000000000 --- a/eos/effects/shipbonusheavyassaultmissileemdamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyAssaultMissileEMDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "emDamage", - src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavyassaultmissileexplosivedamagecbc2.py b/eos/effects/shipbonusheavyassaultmissileexplosivedamagecbc2.py deleted file mode 100644 index 3ea3ea593..000000000 --- a/eos/effects/shipbonusheavyassaultmissileexplosivedamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyAssaultMissileExplosiveDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py b/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py deleted file mode 100644 index 4843ac63b..000000000 --- a/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusHeavyAssaultMissileKineticDamageCBC1 -# -# Used by: -# Ship: Drake -# Ship: Nighthawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCBC1"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc2.py b/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc2.py deleted file mode 100644 index fdb946508..000000000 --- a/eos/effects/shipbonusheavyassaultmissilekineticdamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyAssaultMissileKineticDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py b/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py deleted file mode 100644 index 85820f30e..000000000 --- a/eos/effects/shipbonusheavyassaultmissilelauncherrofmbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyAssaultMissileLauncherRofMBC2 -# -# Used by: -# Variations of ship: Cyclone (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusheavyassaultmissilethermaldamagecbc2.py b/eos/effects/shipbonusheavyassaultmissilethermaldamagecbc2.py deleted file mode 100644 index dd3e5b94a..000000000 --- a/eos/effects/shipbonusheavyassaultmissilethermaldamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyAssaultMissileThermalDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "thermalDamage", src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavydronearmorhpgc2.py b/eos/effects/shipbonusheavydronearmorhpgc2.py deleted file mode 100644 index 296ebfce8..000000000 --- a/eos/effects/shipbonusheavydronearmorhpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneArmorHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronearmorhppiratefaction.py b/eos/effects/shipbonusheavydronearmorhppiratefaction.py deleted file mode 100644 index 244690dca..000000000 --- a/eos/effects/shipbonusheavydronearmorhppiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneArmorHpPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusheavydronedamagemultipliergc2.py b/eos/effects/shipbonusheavydronedamagemultipliergc2.py deleted file mode 100644 index f144bd698..000000000 --- a/eos/effects/shipbonusheavydronedamagemultipliergc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneDamageMultiplierGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py b/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py deleted file mode 100644 index 8f38f24ee..000000000 --- a/eos/effects/shipbonusheavydronedamagemultiplierpiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneDamageMultiplierPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusheavydronehpgc2.py b/eos/effects/shipbonusheavydronehpgc2.py deleted file mode 100644 index 8ddebf251..000000000 --- a/eos/effects/shipbonusheavydronehpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "hp", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronehppiratefaction.py b/eos/effects/shipbonusheavydronehppiratefaction.py deleted file mode 100644 index c05b7da76..000000000 --- a/eos/effects/shipbonusheavydronehppiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneHPPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "hp", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusheavydroneshieldhpgc2.py b/eos/effects/shipbonusheavydroneshieldhpgc2.py deleted file mode 100644 index 82e112d19..000000000 --- a/eos/effects/shipbonusheavydroneshieldhpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneShieldHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydroneshieldhppiratefaction.py b/eos/effects/shipbonusheavydroneshieldhppiratefaction.py deleted file mode 100644 index 6fd8b4d3d..000000000 --- a/eos/effects/shipbonusheavydroneshieldhppiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneShieldHpPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusheavydronespeedgc.py b/eos/effects/shipbonusheavydronespeedgc.py deleted file mode 100644 index 4f7113218..000000000 --- a/eos/effects/shipbonusheavydronespeedgc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDroneSpeedGC -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavydronetrackinggc.py b/eos/effects/shipbonusheavydronetrackinggc.py deleted file mode 100644 index d306134b2..000000000 --- a/eos/effects/shipbonusheavydronetrackinggc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyDRoneTrackingGC -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Heavy Drone Operation"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusheavymissilealldamagemc2.py b/eos/effects/shipbonusheavymissilealldamagemc2.py deleted file mode 100644 index cd0e38e60..000000000 --- a/eos/effects/shipbonusheavymissilealldamagemc2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusHeavyMissileAllDamageMC2 -# -# Used by: -# Ship: Rapier -# Ship: Scythe Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "explosive", "kinetic", "thermal"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusheavymissileemdamagecbc2.py b/eos/effects/shipbonusheavymissileemdamagecbc2.py deleted file mode 100644 index a2e53af5a..000000000 --- a/eos/effects/shipbonusheavymissileemdamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyMissileEMDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "emDamage", src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavymissileemdmgmb.py b/eos/effects/shipbonusheavymissileemdmgmb.py deleted file mode 100644 index 18cc901a9..000000000 --- a/eos/effects/shipbonusheavymissileemdmgmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyMissileEMDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusheavymissileexplodmgmb.py b/eos/effects/shipbonusheavymissileexplodmgmb.py deleted file mode 100644 index 917596584..000000000 --- a/eos/effects/shipbonusheavymissileexplodmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusHeavyMissileExploDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusheavymissileexplosivedamagecbc2.py b/eos/effects/shipbonusheavymissileexplosivedamagecbc2.py deleted file mode 100644 index c4a2df83e..000000000 --- a/eos/effects/shipbonusheavymissileexplosivedamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyMissileExplosiveDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilekineticdamagecbc1.py b/eos/effects/shipbonusheavymissilekineticdamagecbc1.py deleted file mode 100644 index 83f591980..000000000 --- a/eos/effects/shipbonusheavymissilekineticdamagecbc1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusHeavyMissileKineticDamageCBC1 -# -# Used by: -# Ship: Drake -# Ship: Nighthawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCBC1"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilekineticdamagecbc2.py b/eos/effects/shipbonusheavymissilekineticdamagecbc2.py deleted file mode 100644 index f9ef052fa..000000000 --- a/eos/effects/shipbonusheavymissilekineticdamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyMissileKineticDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilekineticdmgmb.py b/eos/effects/shipbonusheavymissilekineticdmgmb.py deleted file mode 100644 index 5e2f0da29..000000000 --- a/eos/effects/shipbonusheavymissilekineticdmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusHeavyMissileKineticDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusheavymissilelauncherrofmbc2.py b/eos/effects/shipbonusheavymissilelauncherrofmbc2.py deleted file mode 100644 index 7622c3d1d..000000000 --- a/eos/effects/shipbonusheavymissilelauncherrofmbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyMissileLauncherRofMBC2 -# -# Used by: -# Variations of ship: Cyclone (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilethermaldamagecbc2.py b/eos/effects/shipbonusheavymissilethermaldamagecbc2.py deleted file mode 100644 index cf22a33c3..000000000 --- a/eos/effects/shipbonusheavymissilethermaldamagecbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHeavyMissileThermalDamageCBC2 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusCBC2"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shipbonusheavymissilethermdmgmb.py b/eos/effects/shipbonusheavymissilethermdmgmb.py deleted file mode 100644 index d4406c6b6..000000000 --- a/eos/effects/shipbonusheavymissilethermdmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusHeavyMissileThermDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonushmlemdamageac.py b/eos/effects/shipbonushmlemdamageac.py deleted file mode 100644 index 464e8d6ac..000000000 --- a/eos/effects/shipbonushmlemdamageac.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHMLEMDamageAC -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlexplodamageac.py b/eos/effects/shipbonushmlexplodamageac.py deleted file mode 100644 index c22b7f6ba..000000000 --- a/eos/effects/shipbonushmlexplodamageac.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHMLExploDamageAC -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlkineticdamageac.py b/eos/effects/shipbonushmlkineticdamageac.py deleted file mode 100644 index adecc7914..000000000 --- a/eos/effects/shipbonushmlkineticdamageac.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHMLKineticDamageAC -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlthermdamageac.py b/eos/effects/shipbonushmlthermdamageac.py deleted file mode 100644 index 663ee7a44..000000000 --- a/eos/effects/shipbonushmlthermdamageac.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHMLThermDamageAC -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py b/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py deleted file mode 100644 index 1275a2e99..000000000 --- a/eos/effects/shipbonushmlvelocityelitebonusheavygunship1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusHMLVelocityEliteBonusHeavyGunship1 -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("eliteBonusHeavyGunship1"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonushtfalloffgb2.py b/eos/effects/shipbonushtfalloffgb2.py deleted file mode 100644 index f8a66395d..000000000 --- a/eos/effects/shipbonushtfalloffgb2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHTFalloffGB2 -# -# Used by: -# Ship: Kronos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusGB2"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonushybridfalloffatc2.py b/eos/effects/shipbonushybridfalloffatc2.py deleted file mode 100644 index b60d60618..000000000 --- a/eos/effects/shipbonushybridfalloffatc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHybridFalloffATC2 -# -# Used by: -# Ship: Adrestia -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipbonushybridoptimalcb.py b/eos/effects/shipbonushybridoptimalcb.py deleted file mode 100644 index 5129958e9..000000000 --- a/eos/effects/shipbonushybridoptimalcb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHybridOptimalCB -# -# Used by: -# Ship: Rokh -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonushybridtrackingatc2.py b/eos/effects/shipbonushybridtrackingatc2.py deleted file mode 100644 index 9b6e8a4ec..000000000 --- a/eos/effects/shipbonushybridtrackingatc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusHybridTrackingATC2 -# -# Used by: -# Ship: Adrestia -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipbonushybridtrackinggf2.py b/eos/effects/shipbonushybridtrackinggf2.py deleted file mode 100644 index 77b58a6d6..000000000 --- a/eos/effects/shipbonushybridtrackinggf2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusHybridTrackingGF2 -# -# Used by: -# Ship: Ares -# Ship: Federation Navy Comet -# Ship: Pacifier -# Ship: Tristan -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusiceharvesterdurationore3.py b/eos/effects/shipbonusiceharvesterdurationore3.py deleted file mode 100644 index 2e099cc24..000000000 --- a/eos/effects/shipbonusiceharvesterdurationore3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusIceHarvesterDurationORE3 -# -# Used by: -# Ships from group: Exhumer (3 of 3) -# Ships from group: Mining Barge (3 of 3) -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Ice Harvesting"), - "duration", container.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") diff --git a/eos/effects/shipbonusjustscramblerrangegf2.py b/eos/effects/shipbonusjustscramblerrangegf2.py deleted file mode 100644 index 0c82717b2..000000000 --- a/eos/effects/shipbonusjustscramblerrangegf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusJustScramblerRangeGF2 -# -# Used by: -# Ship: Maulus Navy Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Navigation"), "maxRange", - src.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonuskineticarmorresistancead2.py b/eos/effects/shipbonuskineticarmorresistancead2.py deleted file mode 100644 index 2359565c0..000000000 --- a/eos/effects/shipbonuskineticarmorresistancead2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusKineticArmorResistanceAD2 -# -# Used by: -# Ship: Pontifex -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), - skill="Amarr Destroyer") diff --git a/eos/effects/shipbonuskineticarmorresistancegd2.py b/eos/effects/shipbonuskineticarmorresistancegd2.py deleted file mode 100644 index 48b4afc6a..000000000 --- a/eos/effects/shipbonuskineticarmorresistancegd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusKineticArmorResistanceGD2 -# -# Used by: -# Ship: Magus -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), - skill="Gallente Destroyer") diff --git a/eos/effects/shipbonuskineticmissiledamagecd1.py b/eos/effects/shipbonuskineticmissiledamagecd1.py deleted file mode 100644 index 3f47a32e2..000000000 --- a/eos/effects/shipbonuskineticmissiledamagecd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusKineticMissileDamageCD1 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", - src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonuskineticmissiledamagegb2.py b/eos/effects/shipbonuskineticmissiledamagegb2.py deleted file mode 100644 index 67a68211d..000000000 --- a/eos/effects/shipbonuskineticmissiledamagegb2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusKineticMissileDamageGB2 -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusGB2"), - skill="Gallente Battleship") diff --git a/eos/effects/shipbonuskineticmissiledamagegc2.py b/eos/effects/shipbonuskineticmissiledamagegc2.py deleted file mode 100644 index b4f538d2c..000000000 --- a/eos/effects/shipbonuskineticmissiledamagegc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusKineticMissileDamageGC2 -# -# Used by: -# Ship: Chameleon -# Ship: Gila -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuskineticmissiledamagegf.py b/eos/effects/shipbonuskineticmissiledamagegf.py deleted file mode 100644 index 8bd18e45a..000000000 --- a/eos/effects/shipbonuskineticmissiledamagegf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusKineticMissileDamageGF -# -# Used by: -# Ship: Whiptail -# Ship: Worm -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonuskineticmissiledmgmd1.py b/eos/effects/shipbonuskineticmissiledmgmd1.py deleted file mode 100644 index ece38cb4e..000000000 --- a/eos/effects/shipbonuskineticmissiledmgmd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusKineticMissileDmgMD1 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", - src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonuskineticshieldresistancecb2.py b/eos/effects/shipbonuskineticshieldresistancecb2.py deleted file mode 100644 index 257628fe1..000000000 --- a/eos/effects/shipbonuskineticshieldresistancecb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusKineticShieldResistanceCB2 -# -# Used by: -# Ship: Rattlesnake -# Ship: Rokh -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipbonuskineticshieldresistancemd2.py b/eos/effects/shipbonuskineticshieldresistancemd2.py deleted file mode 100644 index 81c08cc47..000000000 --- a/eos/effects/shipbonuskineticshieldresistancemd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusKineticShieldResistanceMD2 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonuslargeenergyturretmaxrangeab.py b/eos/effects/shipbonuslargeenergyturretmaxrangeab.py deleted file mode 100644 index 795ddf9ef..000000000 --- a/eos/effects/shipbonuslargeenergyturretmaxrangeab.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLargeEnergyTurretMaxRangeAB -# -# Used by: -# Ship: Marshal -# Ship: Paladin -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py b/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py deleted file mode 100644 index cad976ce7..000000000 --- a/eos/effects/shipbonuslargeenergyturretmaxrangeab2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLargeEnergyTurretMaxRangeAB2 -# -# Used by: -# Ship: Apocalypse -# Ship: Apocalypse Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargeenergyturrettrackingab.py b/eos/effects/shipbonuslargeenergyturrettrackingab.py deleted file mode 100644 index 0ec7b3b4c..000000000 --- a/eos/effects/shipbonuslargeenergyturrettrackingab.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLargeEnergyTurretTrackingAB -# -# Used by: -# Ship: Apocalypse -# Ship: Apocalypse Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargeenergyweapondamageab2.py b/eos/effects/shipbonuslargeenergyweapondamageab2.py deleted file mode 100644 index ab92bb560..000000000 --- a/eos/effects/shipbonuslargeenergyweapondamageab2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusLargeEnergyWeaponDamageAB2 -# -# Used by: -# Ship: Abaddon -# Ship: Marshal -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAB2"), - skill="Amarr Battleship") diff --git a/eos/effects/shipbonuslargemissileflighttimecb1.py b/eos/effects/shipbonuslargemissileflighttimecb1.py deleted file mode 100644 index 9108bddbe..000000000 --- a/eos/effects/shipbonuslargemissileflighttimecb1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusLargeMissileFlightTimeCB1 -# -# Used by: -# Ship: Marshal -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosionDelay", - src.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "explosionDelay", - src.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonuslauncherrof2cb.py b/eos/effects/shipbonuslauncherrof2cb.py deleted file mode 100644 index a64adde8d..000000000 --- a/eos/effects/shipbonuslauncherrof2cb.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusLauncherRoF2CB -# -# Used by: -# Ship: Marshal -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", "speed", - src.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", "speed", - src.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", "speed", - src.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusletoptimalrangepiratefaction.py b/eos/effects/shipbonusletoptimalrangepiratefaction.py deleted file mode 100644 index 680c7ef2d..000000000 --- a/eos/effects/shipbonusletoptimalrangepiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusLETOptimalRangePirateFaction -# -# Used by: -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonuslightdronearmorhpgc2.py b/eos/effects/shipbonuslightdronearmorhpgc2.py deleted file mode 100644 index 244594dd1..000000000 --- a/eos/effects/shipbonuslightdronearmorhpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusLightDroneArmorHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdronearmorhppiratefaction.py b/eos/effects/shipbonuslightdronearmorhppiratefaction.py deleted file mode 100644 index 7f4706023..000000000 --- a/eos/effects/shipbonuslightdronearmorhppiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLightDroneArmorHPPirateFaction -# -# Used by: -# Ship: Whiptail -# Ship: Worm -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonuslightdronedamagemultipliergc2.py b/eos/effects/shipbonuslightdronedamagemultipliergc2.py deleted file mode 100644 index c25e35e5d..000000000 --- a/eos/effects/shipbonuslightdronedamagemultipliergc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusLightDroneDamageMultiplierGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py b/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py deleted file mode 100644 index 75451999c..000000000 --- a/eos/effects/shipbonuslightdronedamagemultiplierpiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLightDroneDamageMultiplierPirateFaction -# -# Used by: -# Ship: Whiptail -# Ship: Worm -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonuslightdronehpgc2.py b/eos/effects/shipbonuslightdronehpgc2.py deleted file mode 100644 index 886f429a5..000000000 --- a/eos/effects/shipbonuslightdronehpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusLightDroneHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "hp", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdronehppiratefaction.py b/eos/effects/shipbonuslightdronehppiratefaction.py deleted file mode 100644 index 2511b9736..000000000 --- a/eos/effects/shipbonuslightdronehppiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLightDroneHPPirateFaction -# -# Used by: -# Ship: Whiptail -# Ship: Worm -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "hp", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonuslightdroneshieldhpgc2.py b/eos/effects/shipbonuslightdroneshieldhpgc2.py deleted file mode 100644 index 5cead50c6..000000000 --- a/eos/effects/shipbonuslightdroneshieldhpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusLightDroneShieldHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuslightdroneshieldhppiratefaction.py b/eos/effects/shipbonuslightdroneshieldhppiratefaction.py deleted file mode 100644 index 0e7b7b147..000000000 --- a/eos/effects/shipbonuslightdroneshieldhppiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusLightDroneShieldHPPirateFaction -# -# Used by: -# Ship: Whiptail -# Ship: Worm -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Light Drone Operation"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonuslightmissilealldamagemc2.py b/eos/effects/shipbonuslightmissilealldamagemc2.py deleted file mode 100644 index c00eb3939..000000000 --- a/eos/effects/shipbonuslightmissilealldamagemc2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusLightMissileAllDamageMC2 -# -# Used by: -# Ship: Rapier -# Ship: Scythe Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "explosive", "kinetic", "thermal"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusmediumdronearmorhpgc2.py b/eos/effects/shipbonusmediumdronearmorhpgc2.py deleted file mode 100644 index d3237a25b..000000000 --- a/eos/effects/shipbonusmediumdronearmorhpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMediumDroneArmorHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdronearmorhppiratefaction.py b/eos/effects/shipbonusmediumdronearmorhppiratefaction.py deleted file mode 100644 index 2d5373b43..000000000 --- a/eos/effects/shipbonusmediumdronearmorhppiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMediumDroneArmorHPPirateFaction -# -# Used by: -# Ship: Chameleon -# Ship: Gila -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "armorHP", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusmediumdronedamagemultipliergc2.py b/eos/effects/shipbonusmediumdronedamagemultipliergc2.py deleted file mode 100644 index df28d53e0..000000000 --- a/eos/effects/shipbonusmediumdronedamagemultipliergc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMediumDroneDamageMultiplierGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py b/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py deleted file mode 100644 index 627698037..000000000 --- a/eos/effects/shipbonusmediumdronedamagemultiplierpiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMediumDroneDamageMultiplierPirateFaction -# -# Used by: -# Ship: Chameleon -# Ship: Gila -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusmediumdronehpgc2.py b/eos/effects/shipbonusmediumdronehpgc2.py deleted file mode 100644 index 719b2b507..000000000 --- a/eos/effects/shipbonusmediumdronehpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMediumDroneHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "hp", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdronehppiratefaction.py b/eos/effects/shipbonusmediumdronehppiratefaction.py deleted file mode 100644 index 3a41ee95c..000000000 --- a/eos/effects/shipbonusmediumdronehppiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMediumDroneHPPirateFaction -# -# Used by: -# Ship: Chameleon -# Ship: Gila -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "hp", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusmediumdroneshieldhpgc2.py b/eos/effects/shipbonusmediumdroneshieldhpgc2.py deleted file mode 100644 index 3e2e48409..000000000 --- a/eos/effects/shipbonusmediumdroneshieldhpgc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMediumDroneShieldHPGC2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py b/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py deleted file mode 100644 index 593009a33..000000000 --- a/eos/effects/shipbonusmediumdroneshieldhppiratefaction.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMediumDroneShieldHPPirateFaction -# -# Used by: -# Ship: Chameleon -# Ship: Gila -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Medium Drone Operation"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py b/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py deleted file mode 100644 index 8e3662ced..000000000 --- a/eos/effects/shipbonusmediumenergyturretdamagepiratefaction.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusMediumEnergyTurretDamagePirateFaction -# -# Used by: -# Ship: Ashimmu -# Ship: Fiend -# Ship: Gnosis -# Ship: Phantasm -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusmediumenergyturrettrackingac2.py b/eos/effects/shipbonusmediumenergyturrettrackingac2.py deleted file mode 100644 index d0c9a8e55..000000000 --- a/eos/effects/shipbonusmediumenergyturrettrackingac2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMediumEnergyTurretTrackingAC2 -# -# Used by: -# Ship: Fiend -# Ship: Phantasm -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusmediumhybriddmgcc2.py b/eos/effects/shipbonusmediumhybriddmgcc2.py deleted file mode 100644 index 858d70ab9..000000000 --- a/eos/effects/shipbonusmediumhybriddmgcc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMediumHybridDmgCC2 -# -# Used by: -# Ship: Falcon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusmedmissileflighttimecc2.py b/eos/effects/shipbonusmedmissileflighttimecc2.py deleted file mode 100644 index a8d76a49e..000000000 --- a/eos/effects/shipbonusmedmissileflighttimecc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusMedMissileFlightTimeCC2 -# -# Used by: -# Ship: Enforcer -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosionDelay", src.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "explosionDelay", src.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusmetoptimalac2.py b/eos/effects/shipbonusmetoptimalac2.py deleted file mode 100644 index 758ede0d7..000000000 --- a/eos/effects/shipbonusmetoptimalac2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMETOptimalAC2 -# -# Used by: -# Ship: Enforcer -# Ship: Omen Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusmetoptimalrangepiratefaction.py b/eos/effects/shipbonusmetoptimalrangepiratefaction.py deleted file mode 100644 index 10451c94f..000000000 --- a/eos/effects/shipbonusmetoptimalrangepiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMETOptimalRangePirateFaction -# -# Used by: -# Ships named like: Stratios (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusmf1torpedoexplosionvelocity.py b/eos/effects/shipbonusmf1torpedoexplosionvelocity.py deleted file mode 100644 index c546c4716..000000000 --- a/eos/effects/shipbonusmf1torpedoexplosionvelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMF1TorpedoExplosionVelocity -# -# Used by: -# Ship: Hound -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusmf1torpedoflighttime.py b/eos/effects/shipbonusmf1torpedoflighttime.py deleted file mode 100644 index 539d8a205..000000000 --- a/eos/effects/shipbonusmf1torpedoflighttime.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMF1TorpedoFlightTime -# -# Used by: -# Ship: Hound -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosionDelay", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusmineralbaygi2.py b/eos/effects/shipbonusmineralbaygi2.py deleted file mode 100644 index 66a78e721..000000000 --- a/eos/effects/shipbonusmineralbaygi2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMineralBayGI2 -# -# Used by: -# Ship: Kryos -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("specialMineralHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), - skill="Gallente Industrial") diff --git a/eos/effects/shipbonusminingdroneamountpercentrookie.py b/eos/effects/shipbonusminingdroneamountpercentrookie.py deleted file mode 100644 index 5e0be29e2..000000000 --- a/eos/effects/shipbonusminingdroneamountpercentrookie.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusMiningDroneAmountPercentRookie -# -# Used by: -# Ship: Gnosis -# Ship: Praxis -# Ship: Taipan -# Ship: Velator -type = "passive" - - -def handler(fit, container, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), - "miningAmount", container.getModifiedItemAttr("rookieDroneBonus")) diff --git a/eos/effects/shipbonusminingdurationore3.py b/eos/effects/shipbonusminingdurationore3.py deleted file mode 100644 index 4f6551231..000000000 --- a/eos/effects/shipbonusminingdurationore3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMiningDurationORE3 -# -# Used by: -# Ships from group: Exhumer (3 of 3) -# Ships from group: Mining Barge (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "duration", ship.getModifiedItemAttr("shipBonusORE3"), skill="Mining Barge") diff --git a/eos/effects/shipbonusminingiceharvestingrangeore2.py b/eos/effects/shipbonusminingiceharvestingrangeore2.py deleted file mode 100644 index d29154f31..000000000 --- a/eos/effects/shipbonusminingiceharvestingrangeore2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMiningIceHarvestingRangeORE2 -# -# Used by: -# Variations of ship: Covetor (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Mining") or mod.item.requiresSkill("Ice Harvesting"), - "maxRange", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonusmissileaoevelocitymb2.py b/eos/effects/shipbonusmissileaoevelocitymb2.py deleted file mode 100644 index 844746ae1..000000000 --- a/eos/effects/shipbonusmissileaoevelocitymb2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMissileAoeVelocityMB2 -# -# Used by: -# Ship: Typhoon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeVelocity", ship.getModifiedItemAttr("shipBonusMB2"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py b/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py deleted file mode 100644 index e7634c7ec..000000000 --- a/eos/effects/shipbonusmissileexplosiondelaypiratefaction2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusMissileExplosionDelayPirateFaction2 -# -# Used by: -# Ship: Barghest -# Ship: Garmur -# Ship: Orthrus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosionDelay", ship.getModifiedItemAttr("shipBonusRole8")) diff --git a/eos/effects/shipbonusmissilekineticlatf2.py b/eos/effects/shipbonusmissilekineticlatf2.py deleted file mode 100644 index c07b02c44..000000000 --- a/eos/effects/shipbonusmissilekineticlatf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMissileKineticlATF2 -# -# Used by: -# Ship: Cambion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonusmissilelauncherassaultrofatc1.py b/eos/effects/shipbonusmissilelauncherassaultrofatc1.py deleted file mode 100644 index cc18bb8ed..000000000 --- a/eos/effects/shipbonusmissilelauncherassaultrofatc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMissileLauncherAssaultROFATC1 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Light", - "speed", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py b/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py deleted file mode 100644 index ae3dc443d..000000000 --- a/eos/effects/shipbonusmissilelauncherheavyassaultrofatc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMissileLauncherHeavyAssaultROFATC1 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy Assault", - "speed", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipbonusmissilelauncherheavyrofatc1.py b/eos/effects/shipbonusmissilelauncherheavyrofatc1.py deleted file mode 100644 index bf2b11b02..000000000 --- a/eos/effects/shipbonusmissilelauncherheavyrofatc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMissileLauncherHeavyROFATC1 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Heavy", - "speed", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipbonusmissilevelocityad2.py b/eos/effects/shipbonusmissilevelocityad2.py deleted file mode 100644 index af169f934..000000000 --- a/eos/effects/shipbonusmissilevelocityad2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMissileVelocityAD2 -# -# Used by: -# Ship: Heretic -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusmissilevelocitycc2.py b/eos/effects/shipbonusmissilevelocitycc2.py deleted file mode 100644 index 991b62c44..000000000 --- a/eos/effects/shipbonusmissilevelocitycc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusMissileVelocityCC2 -# -# Used by: -# Ship: Cerberus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusmutadaptiveremoterepairrangerole3.py b/eos/effects/shipbonusmutadaptiveremoterepairrangerole3.py deleted file mode 100644 index 64fca9ffb..000000000 --- a/eos/effects/shipbonusmutadaptiveremoterepairrangerole3.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusMutadaptiveRemoteRepairRangeRole3 -# -# Used by: -# Ship: Rodiva -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mutadaptive Remote Armor Repairer", "maxRange", src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonusmutadaptiveremoterepamountelitebonuslogisitics2.py b/eos/effects/shipbonusmutadaptiveremoterepamountelitebonuslogisitics2.py deleted file mode 100644 index b8ae258c3..000000000 --- a/eos/effects/shipbonusmutadaptiveremoterepamountelitebonuslogisitics2.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusMutadaptiveRemoteRepAmounteliteBonusLogisitics2 -# -# Used by: -# Ship: Zarmazd -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mutadaptive Remote Armor Repairer", "armorDamageAmount", src.getModifiedItemAttr("eliteBonusLogistics2"), skill="Logistics Cruisers") diff --git a/eos/effects/shipbonusmutadaptiveremoterepcapneedelitebonuslogisitics1.py b/eos/effects/shipbonusmutadaptiveremoterepcapneedelitebonuslogisitics1.py deleted file mode 100644 index b936f644c..000000000 --- a/eos/effects/shipbonusmutadaptiveremoterepcapneedelitebonuslogisitics1.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusMutadaptiveRemoteRepCapNeedeliteBonusLogisitics1 -# -# Used by: -# Ship: Zarmazd -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mutadaptive Remote Armor Repairer", "capacitorNeed", src.getModifiedItemAttr("eliteBonusLogistics1"), skill="Logistics Cruisers") diff --git a/eos/effects/shipbonusmutadaptiveremotereprangepc1.py b/eos/effects/shipbonusmutadaptiveremotereprangepc1.py deleted file mode 100644 index 67b2da620..000000000 --- a/eos/effects/shipbonusmutadaptiveremotereprangepc1.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusMutadaptiveRemoteRepRangePC1 -# -# Used by: -# Ship: Zarmazd -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mutadaptive Remote Armor Repairer", "maxRange", src.getModifiedItemAttr("shipBonusPC1"), skill="Precursor Cruiser") diff --git a/eos/effects/shipbonusmutadaptiverepamountpc1.py b/eos/effects/shipbonusmutadaptiverepamountpc1.py deleted file mode 100644 index 7e892f3e4..000000000 --- a/eos/effects/shipbonusmutadaptiverepamountpc1.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusMutadaptiveRepAmountPC1 -# -# Used by: -# Ship: Rodiva -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mutadaptive Remote Armor Repairer", "armorDamageAmount", src.getModifiedItemAttr("shipBonusPC1"), skill="Precursor Cruiser") diff --git a/eos/effects/shipbonusmutadaptiverepcapneedpc2.py b/eos/effects/shipbonusmutadaptiverepcapneedpc2.py deleted file mode 100644 index 22348514a..000000000 --- a/eos/effects/shipbonusmutadaptiverepcapneedpc2.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusMutadaptiveRepCapNeedPC2 -# -# Used by: -# Ship: Rodiva -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Mutadaptive Remote Armor Repairer", "capacitorNeed", src.getModifiedItemAttr("shipBonusPC2"), skill="Precursor Cruiser") diff --git a/eos/effects/shipbonusmwdsignatureradiusmd2.py b/eos/effects/shipbonusmwdsignatureradiusmd2.py deleted file mode 100644 index 2354f22a1..000000000 --- a/eos/effects/shipbonusmwdsignatureradiusmd2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusMWDSignatureRadiusMD2 -# -# Used by: -# Ship: Talwar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", ship.getModifiedItemAttr("shipBonusMD2"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusneutcapneedrolebonus2.py b/eos/effects/shipbonusneutcapneedrolebonus2.py deleted file mode 100644 index 52dfa7796..000000000 --- a/eos/effects/shipbonusneutcapneedrolebonus2.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusNeutCapNeedRoleBonus2 -# -# Used by: -# Ship: Damavik -# Ship: Drekavac -# Ship: Hydra -# Ship: Kikimora -# Ship: Leshak -# Ship: Tiamat -# Ship: Vedmak -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "capacitorNeed", - src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusnoctissalvagecycle.py b/eos/effects/shipbonusnoctissalvagecycle.py deleted file mode 100644 index 5b405a371..000000000 --- a/eos/effects/shipbonusnoctissalvagecycle.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusNoctisSalvageCycle -# -# Used by: -# Ship: Noctis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), - "duration", ship.getModifiedItemAttr("shipBonusOreIndustrial1"), - skill="ORE Industrial") diff --git a/eos/effects/shipbonusnoctistractorcycle.py b/eos/effects/shipbonusnoctistractorcycle.py deleted file mode 100644 index b9ea733b9..000000000 --- a/eos/effects/shipbonusnoctistractorcycle.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusNoctisTractorCycle -# -# Used by: -# Ship: Noctis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "duration", ship.getModifiedItemAttr("shipBonusOreIndustrial1"), - skill="ORE Industrial") diff --git a/eos/effects/shipbonusnoctistractorrange.py b/eos/effects/shipbonusnoctistractorrange.py deleted file mode 100644 index ab2254345..000000000 --- a/eos/effects/shipbonusnoctistractorrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusNoctisTractorRange -# -# Used by: -# Ship: Noctis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxRange", ship.getModifiedItemAttr("shipBonusOreIndustrial2"), - skill="ORE Industrial") diff --git a/eos/effects/shipbonusnoctistractorvelocity.py b/eos/effects/shipbonusnoctistractorvelocity.py deleted file mode 100644 index 28c2f237a..000000000 --- a/eos/effects/shipbonusnoctistractorvelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusNoctisTractorVelocity -# -# Used by: -# Ship: Noctis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", - "maxTractorVelocity", ship.getModifiedItemAttr("shipBonusOreIndustrial2"), - skill="ORE Industrial") diff --git a/eos/effects/shipbonusnosneutcapneedrolebonus2.py b/eos/effects/shipbonusnosneutcapneedrolebonus2.py deleted file mode 100644 index ec427ec11..000000000 --- a/eos/effects/shipbonusnosneutcapneedrolebonus2.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusNosNeutCapNeedRoleBonus2 -# -# Used by: -# Variations of ship: Rodiva (2 of 2) -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capacitor Emission Systems"), "capacitorNeed", src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusnosoptimalfalloffac2.py b/eos/effects/shipbonusnosoptimalfalloffac2.py deleted file mode 100644 index 355b6e22c..000000000 --- a/eos/effects/shipbonusnosoptimalfalloffac2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusNosOptimalFalloffAC2 -# -# Used by: -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "maxRange", - src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusorecapacitygi2.py b/eos/effects/shipbonusorecapacitygi2.py deleted file mode 100644 index 5c6af2abb..000000000 --- a/eos/effects/shipbonusorecapacitygi2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusOreCapacityGI2 -# -# Used by: -# Ship: Miasmos -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), - skill="Gallente Industrial") diff --git a/eos/effects/shipbonusoreholdore2.py b/eos/effects/shipbonusoreholdore2.py deleted file mode 100644 index fccf39e52..000000000 --- a/eos/effects/shipbonusoreholdore2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusOreHoldORE2 -# -# Used by: -# Variations of ship: Retriever (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("specialOreHoldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonuspbc1disintegratordamage.py b/eos/effects/shipbonuspbc1disintegratordamage.py deleted file mode 100644 index da8e257ea..000000000 --- a/eos/effects/shipbonuspbc1disintegratordamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusPBC1DisintegratorDamage -# -# Used by: -# Ship: Drekavac -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusPBC1"), - skill="Precursor Battlecruiser") diff --git a/eos/effects/shipbonuspctdamagepc1.py b/eos/effects/shipbonuspctdamagepc1.py deleted file mode 100644 index 06e686ab2..000000000 --- a/eos/effects/shipbonuspctdamagepc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipbonusPCTDamagePC1 -# -# Used by: -# Ship: Tiamat -# Ship: Vedmak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusPC1"), skill="Precursor Cruiser") diff --git a/eos/effects/shipbonuspctdamagepf1.py b/eos/effects/shipbonuspctdamagepf1.py deleted file mode 100644 index 59a1071e2..000000000 --- a/eos/effects/shipbonuspctdamagepf1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipbonusPCTDamagePF1 -# -# Used by: -# Ship: Damavik -# Ship: Hydra -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusPF1"), skill="Precursor Frigate") diff --git a/eos/effects/shipbonuspctoptimalpf2.py b/eos/effects/shipbonuspctoptimalpf2.py deleted file mode 100644 index 7403b2146..000000000 --- a/eos/effects/shipbonuspctoptimalpf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipbonusPCTOptimalPF2 -# -# Used by: -# Ship: Damavik -# Ship: Hydra -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "maxRange", ship.getModifiedItemAttr("shipBonusPF2"), skill="Precursor Frigate") diff --git a/eos/effects/shipbonuspcttrackingpc2.py b/eos/effects/shipbonuspcttrackingpc2.py deleted file mode 100644 index 4914d290e..000000000 --- a/eos/effects/shipbonuspcttrackingpc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipbonusPCTTrackingPC2 -# -# Used by: -# Ship: Tiamat -# Ship: Vedmak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusPC2"), skill="Precursor Cruiser") diff --git a/eos/effects/shipbonuspd1disintegratordamage.py b/eos/effects/shipbonuspd1disintegratordamage.py deleted file mode 100644 index 23adcba2d..000000000 --- a/eos/effects/shipbonuspd1disintegratordamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusPD1DisintegratorDamage -# -# Used by: -# Ship: Kikimora -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusPD1"), - skill="Precursor Destroyer") diff --git a/eos/effects/shipbonuspd2disintegratormaxrange.py b/eos/effects/shipbonuspd2disintegratormaxrange.py deleted file mode 100644 index c56940a22..000000000 --- a/eos/effects/shipbonuspd2disintegratormaxrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusPD2DisintegratorMaxRange -# -# Used by: -# Ship: Kikimora -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "maxRange", ship.getModifiedItemAttr("shipBonusPD2"), - skill="Precursor Destroyer") diff --git a/eos/effects/shipbonuspicommoditiesholdgi2.py b/eos/effects/shipbonuspicommoditiesholdgi2.py deleted file mode 100644 index dfac42672..000000000 --- a/eos/effects/shipbonuspicommoditiesholdgi2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusPICommoditiesHoldGI2 -# -# Used by: -# Ship: Epithal -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("specialPlanetaryCommoditiesHoldCapacity", ship.getModifiedItemAttr("shipBonusGI2"), - skill="Gallente Industrial") diff --git a/eos/effects/shipbonuspiratefrigateprojdamage.py b/eos/effects/shipbonuspiratefrigateprojdamage.py deleted file mode 100644 index e3710e611..000000000 --- a/eos/effects/shipbonuspiratefrigateprojdamage.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipBonusPirateFrigateProjDamage -# -# Used by: -# Ship: Chremoas -# Ship: Dramiel -# Ship: Sunesis -# Ship: Svipul -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonuspiratesmallhybriddmg.py b/eos/effects/shipbonuspiratesmallhybriddmg.py deleted file mode 100644 index a9a7fb9eb..000000000 --- a/eos/effects/shipbonuspiratesmallhybriddmg.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusPirateSmallHybridDmg -# -# Used by: -# Ship: Daredevil -# Ship: Hecate -# Ship: Sunesis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusprojectiledamagembc1.py b/eos/effects/shipbonusprojectiledamagembc1.py deleted file mode 100644 index d1d2bb14d..000000000 --- a/eos/effects/shipbonusprojectiledamagembc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusProjectileDamageMBC1 -# -# Used by: -# Ships named like: Hurricane (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMBC1"), - skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusprojectiledamagembc2.py b/eos/effects/shipbonusprojectiledamagembc2.py deleted file mode 100644 index ef47a0f27..000000000 --- a/eos/effects/shipbonusprojectiledamagembc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusProjectileDamageMBC2 -# -# Used by: -# Ship: Sleipnir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMBC2"), - skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusprojectiletrackingmbc2.py b/eos/effects/shipbonusprojectiletrackingmbc2.py deleted file mode 100644 index e8cd08be7..000000000 --- a/eos/effects/shipbonusprojectiletrackingmbc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusProjectileTrackingMBC2 -# -# Used by: -# Ship: Hurricane Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusMBC2"), - skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipbonusprojectiletrackingmc2.py b/eos/effects/shipbonusprojectiletrackingmc2.py deleted file mode 100644 index 9d45c3e24..000000000 --- a/eos/effects/shipbonusprojectiletrackingmc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusProjectileTrackingMC2 -# -# Used by: -# Ship: Stabber Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusptfalloffmb1.py b/eos/effects/shipbonusptfalloffmb1.py deleted file mode 100644 index 5cd2fade4..000000000 --- a/eos/effects/shipbonusptfalloffmb1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusPTFalloffMB1 -# -# Used by: -# Ship: Marshal -# Ship: Vargur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusremotearmorrepairamount2af.py b/eos/effects/shipbonusremotearmorrepairamount2af.py deleted file mode 100644 index 68da161e5..000000000 --- a/eos/effects/shipbonusremotearmorrepairamount2af.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRemoteArmorRepairAmount2AF -# -# Used by: -# Ship: Deacon -# Ship: Inquisitor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusremotearmorrepairamountac2.py b/eos/effects/shipbonusremotearmorrepairamountac2.py deleted file mode 100644 index b671bc196..000000000 --- a/eos/effects/shipbonusremotearmorrepairamountac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRemoteArmorRepairAmountAC2 -# -# Used by: -# Ship: Augoror -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepairamountgc2.py b/eos/effects/shipbonusremotearmorrepairamountgc2.py deleted file mode 100644 index ec701a318..000000000 --- a/eos/effects/shipbonusremotearmorrepairamountgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRemoteArmorRepairAmountGC2 -# -# Used by: -# Ship: Exequror -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusGC2"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepairamountgf2.py b/eos/effects/shipbonusremotearmorrepairamountgf2.py deleted file mode 100644 index d1cba9063..000000000 --- a/eos/effects/shipbonusremotearmorrepairamountgf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRemoteArmorRepairAmountGF2 -# -# Used by: -# Variations of ship: Navitas (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusGF2"), - skill="Gallente Frigate") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedac1.py b/eos/effects/shipbonusremotearmorrepaircapneedac1.py deleted file mode 100644 index d8d32bf66..000000000 --- a/eos/effects/shipbonusremotearmorrepaircapneedac1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRemoteArmorRepairCapNeedAC1 -# -# Used by: -# Ship: Augoror -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedaf.py b/eos/effects/shipbonusremotearmorrepaircapneedaf.py deleted file mode 100644 index 41c5b3e47..000000000 --- a/eos/effects/shipbonusremotearmorrepaircapneedaf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRemoteArmorRepairCapNeedAF -# -# Used by: -# Ship: Deacon -# Ship: Inquisitor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedgc1.py b/eos/effects/shipbonusremotearmorrepaircapneedgc1.py deleted file mode 100644 index 3c04cdc3a..000000000 --- a/eos/effects/shipbonusremotearmorrepaircapneedgc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRemoteArmorRepairCapNeedGC1 -# -# Used by: -# Ship: Exequror -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusremotearmorrepaircapneedgf.py b/eos/effects/shipbonusremotearmorrepaircapneedgf.py deleted file mode 100644 index b4bc7bbff..000000000 --- a/eos/effects/shipbonusremotearmorrepaircapneedgf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRemoteArmorRepairCapNeedGF -# -# Used by: -# Variations of ship: Navitas (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusremotecapacitortransferrangerole1.py b/eos/effects/shipbonusremotecapacitortransferrangerole1.py deleted file mode 100644 index bfd670862..000000000 --- a/eos/effects/shipbonusremotecapacitortransferrangerole1.py +++ /dev/null @@ -1,7 +0,0 @@ -# shipBonusRemoteCapacitorTransferRangeRole1 -# -# Used by: -# Variations of ship: Rodiva (2 of 2) -type = "passive" -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", "maxRange", src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonusremoterepairamountpiratefaction.py b/eos/effects/shipbonusremoterepairamountpiratefaction.py deleted file mode 100644 index 3ac0e69fb..000000000 --- a/eos/effects/shipbonusremoterepairamountpiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRemoteRepairAmountPirateFaction -# -# Used by: -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonusremoterepairrangepiratefaction2.py b/eos/effects/shipbonusremoterepairrangepiratefaction2.py deleted file mode 100644 index 7a8923b45..000000000 --- a/eos/effects/shipbonusremoterepairrangepiratefaction2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusRemoteRepairRangePirateFaction2 -# -# Used by: -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "maxRange", ship.getModifiedItemAttr("shipBonusRole8")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusRole8")) diff --git a/eos/effects/shipbonusremoterepcapneedrolebonus2.py b/eos/effects/shipbonusremoterepcapneedrolebonus2.py deleted file mode 100644 index ac4ef0aa0..000000000 --- a/eos/effects/shipbonusremoterepcapneedrolebonus2.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusRemoteRepCapNeedRoleBonus2 -# -# Used by: -# Ship: Damavik -# Ship: Drekavac -# Ship: Hydra -# Ship: Kikimora -# Ship: Leshak -# Ship: Tiamat -# Ship: Vedmak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusremoterepmaxrangerolebonus1.py b/eos/effects/shipbonusremoterepmaxrangerolebonus1.py deleted file mode 100644 index 31963a4da..000000000 --- a/eos/effects/shipbonusremoterepmaxrangerolebonus1.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusRemoteRepMaxRangeRoleBonus1 -# -# Used by: -# Ship: Damavik -# Ship: Drekavac -# Ship: Hydra -# Ship: Kikimora -# Ship: Leshak -# Ship: Tiamat -# Ship: Vedmak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "maxRange", ship.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py b/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py deleted file mode 100644 index 0c65a20f2..000000000 --- a/eos/effects/shipbonusremotetrackingcomputerfalloffgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRemoteTrackingComputerFalloffGC2 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusGC2"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py b/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py deleted file mode 100644 index c760a4b28..000000000 --- a/eos/effects/shipbonusremotetrackingcomputerfalloffmc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRemoteTrackingComputerFalloffMC -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Tracking Computer", - "falloffEffectiveness", ship.getModifiedItemAttr("shipBonusMC"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py b/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py deleted file mode 100644 index 09b2fc18d..000000000 --- a/eos/effects/shipbonusrepairsystemsarmorrepairamountgb2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRepairSystemsArmorRepairAmountGB2 -# -# Used by: -# Ship: Hyperion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusGB2"), - skill="Gallente Battleship") diff --git a/eos/effects/shipbonusrepairsystemsbonusatc2.py b/eos/effects/shipbonusrepairsystemsbonusatc2.py deleted file mode 100644 index c761ad921..000000000 --- a/eos/effects/shipbonusrepairsystemsbonusatc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRepairSystemsBonusATC2 -# -# Used by: -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipbonusrhmlrof2cb.py b/eos/effects/shipbonusrhmlrof2cb.py deleted file mode 100644 index f6c61b3b4..000000000 --- a/eos/effects/shipbonusrhmlrof2cb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusRHMLROF2CB -# -# Used by: -# Ship: Raven -# Ship: Widow -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", - "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusrhmlrofcb.py b/eos/effects/shipbonusrhmlrofcb.py deleted file mode 100644 index a145864d6..000000000 --- a/eos/effects/shipbonusrhmlrofcb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRHMLROFCB -# -# Used by: -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", - "speed", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipbonusrhmlrofmb.py b/eos/effects/shipbonusrhmlrofmb.py deleted file mode 100644 index 1f972e2ea..000000000 --- a/eos/effects/shipbonusrhmlrofmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRHMLROFMB -# -# Used by: -# Ship: Typhoon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Heavy", - "speed", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusrole1capitalhybriddamagebonus.py b/eos/effects/shipbonusrole1capitalhybriddamagebonus.py deleted file mode 100644 index 4144b30b4..000000000 --- a/eos/effects/shipbonusrole1capitalhybriddamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole1CapitalHybridDamageBonus -# -# Used by: -# Ship: Vehement -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonusrole1commandburstcpubonus.py b/eos/effects/shipbonusrole1commandburstcpubonus.py deleted file mode 100644 index d141e771a..000000000 --- a/eos/effects/shipbonusrole1commandburstcpubonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole1CommandBurstCPUBonus -# -# Used by: -# Ships from group: Force Auxiliary (6 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "cpu", - src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonusrole1numwarfarelinks.py b/eos/effects/shipbonusrole1numwarfarelinks.py deleted file mode 100644 index 5931b824b..000000000 --- a/eos/effects/shipbonusrole1numwarfarelinks.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole1NumWarfareLinks -# -# Used by: -# Ships from group: Titan (7 of 7) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", - src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonusrole2armorplatesshieldextendersbonus.py b/eos/effects/shipbonusrole2armorplatesshieldextendersbonus.py deleted file mode 100644 index 1c07545cb..000000000 --- a/eos/effects/shipbonusrole2armorplatesshieldextendersbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusRole2ArmorPlates&ShieldExtendersBonus -# -# Used by: -# Ships from group: Titan (7 of 7) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "armorHPBonusAdd", - src.getModifiedItemAttr("shipBonusRole2")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), "capacityBonus", - src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusrole2logisticdronerepamountandhitpointbonus.py b/eos/effects/shipbonusrole2logisticdronerepamountandhitpointbonus.py deleted file mode 100644 index 100056f61..000000000 --- a/eos/effects/shipbonusrole2logisticdronerepamountandhitpointbonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# shipBonusRole2LogisticDroneRepAmountAndHitpointBonus -# -# Used by: -# Ship: Loggerhead -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), - "structureDamageAmount", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), - "shieldBonus", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), - "armorDamageAmount", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), - "armorHP", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), - "shieldCapacity", src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), - "hp", src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusrole2logisticdronerepamountbonus.py b/eos/effects/shipbonusrole2logisticdronerepamountbonus.py deleted file mode 100644 index e54c5ef47..000000000 --- a/eos/effects/shipbonusrole2logisticdronerepamountbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusRole2LogisticDroneRepAmountBonus -# -# Used by: -# Ships from group: Force Auxiliary (5 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "structureDamageAmount", - src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "armorDamageAmount", - src.getModifiedItemAttr("shipBonusRole2")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Drone Operation"), "shieldBonus", - src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonusrole3capitalenergydamagebonus.py b/eos/effects/shipbonusrole3capitalenergydamagebonus.py deleted file mode 100644 index d21771a03..000000000 --- a/eos/effects/shipbonusrole3capitalenergydamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole3CapitalEnergyDamageBonus -# -# Used by: -# Ship: Chemosh -# Ship: Molok -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonusrole3capitalhybriddamagebonus.py b/eos/effects/shipbonusrole3capitalhybriddamagebonus.py deleted file mode 100644 index c79148d3e..000000000 --- a/eos/effects/shipbonusrole3capitalhybriddamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole3CapitalHybridDamageBonus -# -# Used by: -# Ship: Vanquisher -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonusrole3numwarfarelinks.py b/eos/effects/shipbonusrole3numwarfarelinks.py deleted file mode 100644 index 86889e55e..000000000 --- a/eos/effects/shipbonusrole3numwarfarelinks.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole3NumWarfareLinks -# -# Used by: -# Ships from group: Force Auxiliary (6 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", - src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonusrole3xltorpdeovelocitybonus.py b/eos/effects/shipbonusrole3xltorpdeovelocitybonus.py deleted file mode 100644 index 02023dc88..000000000 --- a/eos/effects/shipbonusrole3xltorpdeovelocitybonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole3XLTorpdeoVelocityBonus -# -# Used by: -# Variations of ship: Leviathan (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "maxVelocity", - src.getModifiedItemAttr("shipBonusRole3")) diff --git a/eos/effects/shipbonusrole4fighterdamageandhitpoints.py b/eos/effects/shipbonusrole4fighterdamageandhitpoints.py deleted file mode 100644 index 4daa1d80e..000000000 --- a/eos/effects/shipbonusrole4fighterdamageandhitpoints.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusRole4FighterDamageAndHitpoints -# -# Used by: -# Ship: Caiman -# Ship: Komodo -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", - src.getModifiedItemAttr("shipBonusRole4")) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusRole4")) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusRole4")) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusRole4")) diff --git a/eos/effects/shipbonusrole4nosferatucpubonus.py b/eos/effects/shipbonusrole4nosferatucpubonus.py deleted file mode 100644 index 1d67fbb4b..000000000 --- a/eos/effects/shipbonusrole4nosferatucpubonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole4NosferatuCPUBonus -# -# Used by: -# Ship: Dagon -# Ship: Rabisu -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "cpu", src.getModifiedItemAttr("shipBonusRole4")) diff --git a/eos/effects/shipbonusrole5capitalremotearmorrepairpowergridbonus.py b/eos/effects/shipbonusrole5capitalremotearmorrepairpowergridbonus.py deleted file mode 100644 index 8e33eb7a0..000000000 --- a/eos/effects/shipbonusrole5capitalremotearmorrepairpowergridbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusRole5CapitalRemoteArmorRepairPowergridBonus -# -# Used by: -# Ship: Dagon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Armor Repair Systems"), "power", src.getModifiedItemAttr("shipBonusRole5")) diff --git a/eos/effects/shipbonusrole5remotearmorrepairpowergridbonus.py b/eos/effects/shipbonusrole5remotearmorrepairpowergridbonus.py deleted file mode 100644 index 5e87c2241..000000000 --- a/eos/effects/shipbonusrole5remotearmorrepairpowergridbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusRole5RemoteArmorRepairPowergridBonus -# -# Used by: -# Ships from group: Logistics (3 of 7) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "power", - src.getModifiedItemAttr("shipBonusRole5")) diff --git a/eos/effects/shipbonussalvagecycleaf.py b/eos/effects/shipbonussalvagecycleaf.py deleted file mode 100644 index c5cdf079c..000000000 --- a/eos/effects/shipbonussalvagecycleaf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSalvageCycleAF -# -# Used by: -# Ship: Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), - "duration", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonussalvagecyclecf.py b/eos/effects/shipbonussalvagecyclecf.py deleted file mode 100644 index 88802e78e..000000000 --- a/eos/effects/shipbonussalvagecyclecf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSalvageCycleCF -# -# Used by: -# Ship: Heron -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), - "duration", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonussalvagecyclegf.py b/eos/effects/shipbonussalvagecyclegf.py deleted file mode 100644 index 60dd7e948..000000000 --- a/eos/effects/shipbonussalvagecyclegf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSalvageCycleGF -# -# Used by: -# Ship: Imicus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), - "duration", ship.getModifiedItemAttr("shipBonusGF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonussalvagecyclemf.py b/eos/effects/shipbonussalvagecyclemf.py deleted file mode 100644 index 738c4e6eb..000000000 --- a/eos/effects/shipbonussalvagecyclemf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSalvageCycleMF -# -# Used by: -# Ship: Probe -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Salvaging"), - "duration", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusscanprobestrength2af.py b/eos/effects/shipbonusscanprobestrength2af.py deleted file mode 100644 index e3df5259c..000000000 --- a/eos/effects/shipbonusscanprobestrength2af.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusScanProbeStrength2AF -# -# Used by: -# Ship: Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonus2AF"), - skill="Amarr Frigate") diff --git a/eos/effects/shipbonusscanprobestrengthcf.py b/eos/effects/shipbonusscanprobestrengthcf.py deleted file mode 100644 index 0e61528b2..000000000 --- a/eos/effects/shipbonusscanprobestrengthcf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusScanProbeStrengthCF -# -# Used by: -# Ship: Heron -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusCF2"), - skill="Caldari Frigate") diff --git a/eos/effects/shipbonusscanprobestrengthgf.py b/eos/effects/shipbonusscanprobestrengthgf.py deleted file mode 100644 index aed2e3d3a..000000000 --- a/eos/effects/shipbonusscanprobestrengthgf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusScanProbeStrengthGF -# -# Used by: -# Ship: Imicus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusGF2"), - skill="Gallente Frigate") diff --git a/eos/effects/shipbonusscanprobestrengthmf.py b/eos/effects/shipbonusscanprobestrengthmf.py deleted file mode 100644 index 8caaf2411..000000000 --- a/eos/effects/shipbonusscanprobestrengthmf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusScanProbeStrengthMF -# -# Used by: -# Ship: Probe -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Scanner Probe", - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusMF2"), - skill="Minmatar Frigate") diff --git a/eos/effects/shipbonussentryarmorhpgc3.py b/eos/effects/shipbonussentryarmorhpgc3.py deleted file mode 100644 index e5795c26f..000000000 --- a/eos/effects/shipbonussentryarmorhpgc3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryArmorHPGC3 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "armorHP", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussentrydamagemultipliergc3.py b/eos/effects/shipbonussentrydamagemultipliergc3.py deleted file mode 100644 index fde740a9a..000000000 --- a/eos/effects/shipbonussentrydamagemultipliergc3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryDamageMultiplierGC3 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussentrydronearmorhppiratefaction.py b/eos/effects/shipbonussentrydronearmorhppiratefaction.py deleted file mode 100644 index bda4ffa41..000000000 --- a/eos/effects/shipbonussentrydronearmorhppiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryDroneArmorHpPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "armorHP", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py b/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py deleted file mode 100644 index 27fc5822c..000000000 --- a/eos/effects/shipbonussentrydronedamagemultiplierpiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryDroneDamageMultiplierPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonussentrydronehppiratefaction.py b/eos/effects/shipbonussentrydronehppiratefaction.py deleted file mode 100644 index 4cfd46da4..000000000 --- a/eos/effects/shipbonussentrydronehppiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryDroneHPPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "hp", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py b/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py deleted file mode 100644 index 7704bffed..000000000 --- a/eos/effects/shipbonussentrydroneoptimalrangeelitebonusheavygunship2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSentryDroneOptimalRangeEliteBonusHeavyGunship2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "maxRange", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonussentrydroneshieldhppiratefaction.py b/eos/effects/shipbonussentrydroneshieldhppiratefaction.py deleted file mode 100644 index d757d2ef0..000000000 --- a/eos/effects/shipbonussentrydroneshieldhppiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryDroneShieldHpPirateFaction -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py b/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py deleted file mode 100644 index aab03ea9e..000000000 --- a/eos/effects/shipbonussentrydronetrackingelitebonusheavygunship2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSentryDroneTrackingEliteBonusHeavyGunship2 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "trackingSpeed", ship.getModifiedItemAttr("eliteBonusHeavyGunship2"), - skill="Heavy Assault Cruisers") diff --git a/eos/effects/shipbonussentryhpgc3.py b/eos/effects/shipbonussentryhpgc3.py deleted file mode 100644 index b2545b29f..000000000 --- a/eos/effects/shipbonussentryhpgc3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryHPGC3 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "hp", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussentryshieldhpgc3.py b/eos/effects/shipbonussentryshieldhpgc3.py deleted file mode 100644 index 6161d241f..000000000 --- a/eos/effects/shipbonussentryshieldhpgc3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSentryShieldHPGC3 -# -# Used by: -# Ship: Ishtar -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Sentry Drone Interfacing"), - "shieldCapacity", ship.getModifiedItemAttr("shipBonusGC3"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonussetfalloffaf2.py b/eos/effects/shipbonussetfalloffaf2.py deleted file mode 100644 index 9c6f67d13..000000000 --- a/eos/effects/shipbonussetfalloffaf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSETFalloffAF2 -# -# Used by: -# Ship: Caedes -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "falloff", - src.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusshieldboostamountmc2.py b/eos/effects/shipbonusshieldboostamountmc2.py deleted file mode 100644 index 8acf3337a..000000000 --- a/eos/effects/shipbonusshieldboostamountmc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldBoostAmountMC2 -# -# Used by: -# Ship: Vagabond -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusshieldboostci2.py b/eos/effects/shipbonusshieldboostci2.py deleted file mode 100644 index 594102379..000000000 --- a/eos/effects/shipbonusshieldboostci2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldBoostCI2 -# -# Used by: -# Ship: Bustard -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusCI2"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonusshieldboostermb1a.py b/eos/effects/shipbonusshieldboostermb1a.py deleted file mode 100644 index be92006c9..000000000 --- a/eos/effects/shipbonusshieldboostermb1a.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldBoosterMB1a -# -# Used by: -# Ship: Maelstrom -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusshieldboostmi2.py b/eos/effects/shipbonusshieldboostmi2.py deleted file mode 100644 index 628c261ab..000000000 --- a/eos/effects/shipbonusshieldboostmi2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldBoostMI2 -# -# Used by: -# Ship: Mastodon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMI2"), skill="Minmatar Industrial") diff --git a/eos/effects/shipbonusshieldcapacityore2.py b/eos/effects/shipbonusshieldcapacityore2.py deleted file mode 100644 index 901026323..000000000 --- a/eos/effects/shipbonusshieldcapacityore2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusShieldCapacityORE2 -# -# Used by: -# Variations of ship: Procurer (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldCapacity", ship.getModifiedItemAttr("shipBonusORE2"), skill="Mining Barge") diff --git a/eos/effects/shipbonusshieldemresistancecd2.py b/eos/effects/shipbonusshieldemresistancecd2.py deleted file mode 100644 index 059c76dfd..000000000 --- a/eos/effects/shipbonusshieldemresistancecd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldEMResistanceCD2 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), - skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldexplosiveresistancecd2.py b/eos/effects/shipbonusshieldexplosiveresistancecd2.py deleted file mode 100644 index 70944c9f2..000000000 --- a/eos/effects/shipbonusshieldexplosiveresistancecd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldExplosiveResistanceCD2 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), - skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldkineticresistancecd2.py b/eos/effects/shipbonusshieldkineticresistancecd2.py deleted file mode 100644 index 11f8a77d8..000000000 --- a/eos/effects/shipbonusshieldkineticresistancecd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldKineticResistanceCD2 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), - skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldthermalresistancecd2.py b/eos/effects/shipbonusshieldthermalresistancecd2.py deleted file mode 100644 index b4c5042f5..000000000 --- a/eos/effects/shipbonusshieldthermalresistancecd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldThermalResistanceCD2 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusCD2"), - skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusshieldtransferboostamountcc2.py b/eos/effects/shipbonusshieldtransferboostamountcc2.py deleted file mode 100644 index 734821576..000000000 --- a/eos/effects/shipbonusshieldtransferboostamountcc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferBoostAmountCC2 -# -# Used by: -# Ship: Osprey -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusshieldtransferboostamountcf2.py b/eos/effects/shipbonusshieldtransferboostamountcf2.py deleted file mode 100644 index 164975e92..000000000 --- a/eos/effects/shipbonusshieldtransferboostamountcf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferBoostAmountCF2 -# -# Used by: -# Variations of ship: Bantam (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonusshieldtransferboostamountmc2.py b/eos/effects/shipbonusshieldtransferboostamountmc2.py deleted file mode 100644 index 901826281..000000000 --- a/eos/effects/shipbonusshieldtransferboostamountmc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferBoostAmountMC2 -# -# Used by: -# Ship: Scythe -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusshieldtransferboostamountmf2.py b/eos/effects/shipbonusshieldtransferboostamountmf2.py deleted file mode 100644 index a1c552524..000000000 --- a/eos/effects/shipbonusshieldtransferboostamountmf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferBoostAmountMF2 -# -# Used by: -# Variations of ship: Burst (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusshieldtransfercapneed1.py b/eos/effects/shipbonusshieldtransfercapneed1.py deleted file mode 100644 index 6a7ab5f90..000000000 --- a/eos/effects/shipbonusshieldtransfercapneed1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferCapneed1 -# -# Used by: -# Ship: Osprey -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipbonusshieldtransfercapneedcf.py b/eos/effects/shipbonusshieldtransfercapneedcf.py deleted file mode 100644 index 61732a557..000000000 --- a/eos/effects/shipbonusshieldtransfercapneedcf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferCapNeedCF -# -# Used by: -# Variations of ship: Bantam (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonusshieldtransfercapneedmc1.py b/eos/effects/shipbonusshieldtransfercapneedmc1.py deleted file mode 100644 index 89d41277d..000000000 --- a/eos/effects/shipbonusshieldtransfercapneedmc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferCapneedMC1 -# -# Used by: -# Ship: Scythe -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipbonusshieldtransfercapneedmf.py b/eos/effects/shipbonusshieldtransfercapneedmf.py deleted file mode 100644 index 3f164c524..000000000 --- a/eos/effects/shipbonusshieldtransfercapneedmf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusShieldTransferCapNeedMF -# -# Used by: -# Variations of ship: Burst (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusshtfalloffgf1.py b/eos/effects/shipbonusshtfalloffgf1.py deleted file mode 100644 index 1173ac822..000000000 --- a/eos/effects/shipbonusshtfalloffgf1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSHTFalloffGF1 -# -# Used by: -# Ship: Virtuoso -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), "falloff", - src.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusshtfalloffgf2.py b/eos/effects/shipbonusshtfalloffgf2.py deleted file mode 100644 index ea9d1c560..000000000 --- a/eos/effects/shipbonusshtfalloffgf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSHTFalloffGF2 -# -# Used by: -# Ship: Atron -# Ship: Daredevil -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonussmallenergyturretdamageatf1.py b/eos/effects/shipbonussmallenergyturretdamageatf1.py deleted file mode 100644 index 483f39915..000000000 --- a/eos/effects/shipbonussmallenergyturretdamageatf1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSmallEnergyTurretDamageATF1 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusATF1")) diff --git a/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py b/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py deleted file mode 100644 index f4b2ccfca..000000000 --- a/eos/effects/shipbonussmallenergyturretdamagepiratefaction.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipBonusSmallEnergyTurretDamagePirateFaction -# -# Used by: -# Ship: Caedes -# Ship: Confessor -# Ship: Cruor -# Ship: Imp -# Ship: Succubus -# Ship: Sunesis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipbonussmallenergyturrettracking2af.py b/eos/effects/shipbonussmallenergyturrettracking2af.py deleted file mode 100644 index 76232e8f4..000000000 --- a/eos/effects/shipbonussmallenergyturrettracking2af.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSmallEnergyTurretTracking2AF -# -# Used by: -# Ship: Imp -# Ship: Succubus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py b/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py deleted file mode 100644 index 85f5ba924..000000000 --- a/eos/effects/shipbonussmallenergyweaponoptimalrangeatf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSmallEnergyWeaponOptimalRangeATF2 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonussmallhybridmaxrangeatf2.py b/eos/effects/shipbonussmallhybridmaxrangeatf2.py deleted file mode 100644 index e1312bf05..000000000 --- a/eos/effects/shipbonussmallhybridmaxrangeatf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSmallHybridMaxRangeATF2 -# -# Used by: -# Ship: Utu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonussmallhybridtrackingspeedatf2.py b/eos/effects/shipbonussmallhybridtrackingspeedatf2.py deleted file mode 100644 index 5d0131952..000000000 --- a/eos/effects/shipbonussmallhybridtrackingspeedatf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSmallHybridTrackingSpeedATF2 -# -# Used by: -# Ship: Utu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipbonussmallmissileexplosionradiuscd2.py b/eos/effects/shipbonussmallmissileexplosionradiuscd2.py deleted file mode 100644 index b471d2d1d..000000000 --- a/eos/effects/shipbonussmallmissileexplosionradiuscd2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSmallMissileExplosionRadiusCD2 -# -# Used by: -# Ship: Flycatcher -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonussmallmissileexplosionradiuscf2.py b/eos/effects/shipbonussmallmissileexplosionradiuscf2.py deleted file mode 100644 index 6a10c458c..000000000 --- a/eos/effects/shipbonussmallmissileexplosionradiuscf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSmallMissileExplosionRadiusCF2 -# -# Used by: -# Ship: Crow -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonussmallmissileflighttimecf1.py b/eos/effects/shipbonussmallmissileflighttimecf1.py deleted file mode 100644 index 0b41b4185..000000000 --- a/eos/effects/shipbonussmallmissileflighttimecf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusSmallMissileFlightTimeCF1 -# -# Used by: -# Ship: Pacifier -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "explosionDelay", src.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosionDelay", src.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonussmallmissilerofcf2.py b/eos/effects/shipbonussmallmissilerofcf2.py deleted file mode 100644 index 9849ecc4b..000000000 --- a/eos/effects/shipbonussmallmissilerofcf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusSmallMissileRoFCF2 -# -# Used by: -# Ship: Buzzard -# Ship: Hawk -# Ship: Pacifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonussmartbombcapneedrolebonus2.py b/eos/effects/shipbonussmartbombcapneedrolebonus2.py deleted file mode 100644 index 69e4017a8..000000000 --- a/eos/effects/shipbonussmartbombcapneedrolebonus2.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusSmartbombCapNeedRoleBonus2 -# -# Used by: -# Variations of ship: Rodiva (2 of 2) -# Ship: Damavik -# Ship: Drekavac -# Ship: Hydra -# Ship: Kikimora -# Ship: Leshak -# Ship: Tiamat -# Ship: Vedmak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Pulse Weapons"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonussptfalloffmf2.py b/eos/effects/shipbonussptfalloffmf2.py deleted file mode 100644 index abc07cbca..000000000 --- a/eos/effects/shipbonussptfalloffmf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSPTFalloffMF2 -# -# Used by: -# Ship: Pacifier -# Ship: Rifter -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonussptrofmf.py b/eos/effects/shipbonussptrofmf.py deleted file mode 100644 index 86ac5f332..000000000 --- a/eos/effects/shipbonussptrofmf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSPTRoFMF -# -# Used by: -# Ship: Pacifier -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "speed", src.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusstasismf2.py b/eos/effects/shipbonusstasismf2.py deleted file mode 100644 index 410425e26..000000000 --- a/eos/effects/shipbonusstasismf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusStasisMF2 -# -# Used by: -# Ship: Caedes -# Ship: Cruor -# Ship: Freki -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusstasiswebspeedfactormb.py b/eos/effects/shipbonusstasiswebspeedfactormb.py deleted file mode 100644 index b0d4a1f79..000000000 --- a/eos/effects/shipbonusstasiswebspeedfactormb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusStasisWebSpeedFactorMB -# -# Used by: -# Ship: Vindicator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "speedFactor", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py b/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py deleted file mode 100644 index b390e901e..000000000 --- a/eos/effects/shipbonusstrategiccruiseramarrheatdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserAmarrHeatDamage -# -# Used by: -# Ship: Legion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserAmarr1"), - skill="Amarr Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruiseramarrnaniterepairtime2.py b/eos/effects/shipbonusstrategiccruiseramarrnaniterepairtime2.py deleted file mode 100644 index 3f15088b8..000000000 --- a/eos/effects/shipbonusstrategiccruiseramarrnaniterepairtime2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserAmarrNaniteRepairTime2 -# -# Used by: -# Ship: Legion -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "moduleRepairRate", - ship.getModifiedItemAttr("shipBonusStrategicCruiserAmarr2"), - skill="Amarr Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py b/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py deleted file mode 100644 index 8edf19db3..000000000 --- a/eos/effects/shipbonusstrategiccruisercaldariheatdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserCaldariHeatDamage -# -# Used by: -# Ship: Tengu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserCaldari1"), - skill="Caldari Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruisercaldarinaniterepairtime2.py b/eos/effects/shipbonusstrategiccruisercaldarinaniterepairtime2.py deleted file mode 100644 index d245c16ca..000000000 --- a/eos/effects/shipbonusstrategiccruisercaldarinaniterepairtime2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserCaldariNaniteRepairTime2 -# -# Used by: -# Ship: Tengu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "moduleRepairRate", - ship.getModifiedItemAttr("shipBonusStrategicCruiserCaldari2"), - skill="Caldari Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py b/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py deleted file mode 100644 index dc7f7bd80..000000000 --- a/eos/effects/shipbonusstrategiccruisergallenteheatdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserGallenteHeatDamage -# -# Used by: -# Ship: Proteus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserGallente1"), - skill="Gallente Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruisergallentenaniterepairtime2.py b/eos/effects/shipbonusstrategiccruisergallentenaniterepairtime2.py deleted file mode 100644 index 0652e251e..000000000 --- a/eos/effects/shipbonusstrategiccruisergallentenaniterepairtime2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserGallenteNaniteRepairTime2 -# -# Used by: -# Ship: Proteus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "moduleRepairRate", - ship.getModifiedItemAttr("shipBonusStrategicCruiserGallente2"), - skill="Gallente Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py b/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py deleted file mode 100644 index f97b203cc..000000000 --- a/eos/effects/shipbonusstrategiccruiserminmatarheatdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserMinmatarHeatDamage -# -# Used by: -# Ship: Loki -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusStrategicCruiserMinmatar1"), - skill="Minmatar Strategic Cruiser") diff --git a/eos/effects/shipbonusstrategiccruiserminmatarnaniterepairtime2.py b/eos/effects/shipbonusstrategiccruiserminmatarnaniterepairtime2.py deleted file mode 100644 index 9fe7b88c9..000000000 --- a/eos/effects/shipbonusstrategiccruiserminmatarnaniterepairtime2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusStrategicCruiserMinmatarNaniteRepairTime2 -# -# Used by: -# Ship: Loki -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "moduleRepairRate", - ship.getModifiedItemAttr("shipBonusStrategicCruiserMinmatar2"), - skill="Minmatar Strategic Cruiser") diff --git a/eos/effects/shipbonussupercarriera1fighterdamage.py b/eos/effects/shipbonussupercarriera1fighterdamage.py deleted file mode 100644 index 1c1900cba..000000000 --- a/eos/effects/shipbonussupercarriera1fighterdamage.py +++ /dev/null @@ -1,18 +0,0 @@ -# shipBonusSupercarrierA1FighterDamage -# -# Used by: -# Ship: Aeon -# Ship: Revenant -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierA1"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera2armorresists.py b/eos/effects/shipbonussupercarriera2armorresists.py deleted file mode 100644 index 4eafbff18..000000000 --- a/eos/effects/shipbonussupercarriera2armorresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusSupercarrierA2ArmorResists -# -# Used by: -# Ship: Aeon -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorEmDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), - skill="Amarr Carrier") - fit.ship.boostItemAttr("armorKineticDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierA2"), - skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py b/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py deleted file mode 100644 index ef805c824..000000000 --- a/eos/effects/shipbonussupercarriera2fighterapplicationbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusSupercarrierA2FighterApplicationBonus -# -# Used by: -# Ship: Revenant -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesExplosionVelocity", - src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileExplosionVelocity", - src.getModifiedItemAttr("shipBonusSupercarrierA2"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera3warpstrength.py b/eos/effects/shipbonussupercarriera3warpstrength.py deleted file mode 100644 index caee35c38..000000000 --- a/eos/effects/shipbonussupercarriera3warpstrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierA3WarpStrength -# -# Used by: -# Ship: Aeon -# Ship: Revenant -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierA3"), - skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera4burstprojectorbonus.py b/eos/effects/shipbonussupercarriera4burstprojectorbonus.py deleted file mode 100644 index 49c41fdd6..000000000 --- a/eos/effects/shipbonussupercarriera4burstprojectorbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierA4BurstProjectorBonus -# -# Used by: -# Ship: Aeon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), - "durationWeaponDisruptionBurstProjector", - src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py b/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py deleted file mode 100644 index b24c555c9..000000000 --- a/eos/effects/shipbonussupercarriera4fighterapplicationbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusSupercarrierA4FighterApplicationBonus -# -# Used by: -# Ship: Revenant -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesExplosionRadius", - src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileExplosionRadius", - src.getModifiedItemAttr("shipBonusSupercarrierA4"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarriera5warfarelinksbonus.py b/eos/effects/shipbonussupercarriera5warfarelinksbonus.py deleted file mode 100644 index fdc2f24bc..000000000 --- a/eos/effects/shipbonussupercarriera5warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusSupercarrierA5WarfareLinksBonus -# -# Used by: -# Ship: Aeon -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Armored Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusSupercarrierA5"), skill="Amarr Carrier") diff --git a/eos/effects/shipbonussupercarrierc1fighterdamage.py b/eos/effects/shipbonussupercarrierc1fighterdamage.py deleted file mode 100644 index 680e6ac24..000000000 --- a/eos/effects/shipbonussupercarrierc1fighterdamage.py +++ /dev/null @@ -1,18 +0,0 @@ -# shipBonusSupercarrierC1FighterDamage -# -# Used by: -# Ship: Revenant -# Ship: Wyvern -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierC1"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc2afterburnerbonus.py b/eos/effects/shipbonussupercarrierc2afterburnerbonus.py deleted file mode 100644 index 832a17eff..000000000 --- a/eos/effects/shipbonussupercarrierc2afterburnerbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSupercarrierC2AfterburnerBonus -# -# Used by: -# Ship: Revenant -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), "speedFactor", - src.getModifiedItemAttr("shipBonusSupercarrierC2"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc2shieldresists.py b/eos/effects/shipbonussupercarrierc2shieldresists.py deleted file mode 100644 index 5f9e36e9b..000000000 --- a/eos/effects/shipbonussupercarrierc2shieldresists.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipBonusSupercarrierC2ShieldResists -# -# Used by: -# Ship: Wyvern -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), - skill="Caldari Carrier") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusSupercarrierC2"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc3warpstrength.py b/eos/effects/shipbonussupercarrierc3warpstrength.py deleted file mode 100644 index 9a18457fd..000000000 --- a/eos/effects/shipbonussupercarrierc3warpstrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierC3WarpStrength -# -# Used by: -# Ship: Revenant -# Ship: Wyvern -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierC3"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py b/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py deleted file mode 100644 index ce70f80f2..000000000 --- a/eos/effects/shipbonussupercarrierc4burstprojectorbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierC4BurstProjectorBonus -# -# Used by: -# Ship: Wyvern -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), - "durationECMJammerBurstProjector", src.getModifiedItemAttr("shipBonusSupercarrierC4"), - skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py b/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py deleted file mode 100644 index 5ff00b1ca..000000000 --- a/eos/effects/shipbonussupercarrierc5warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusSupercarrierC5WarfareLinksBonus -# -# Used by: -# Ship: Wyvern -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Shield Command") or mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusSupercarrierC5"), skill="Caldari Carrier") diff --git a/eos/effects/shipbonussupercarrierg1fighterdamage.py b/eos/effects/shipbonussupercarrierg1fighterdamage.py deleted file mode 100644 index 835a0f3fc..000000000 --- a/eos/effects/shipbonussupercarrierg1fighterdamage.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusSupercarrierG1FighterDamage -# -# Used by: -# Variations of ship: Nyx (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierG1"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg2fighterhitpoints.py b/eos/effects/shipbonussupercarrierg2fighterhitpoints.py deleted file mode 100644 index 5b23ff737..000000000 --- a/eos/effects/shipbonussupercarrierg2fighterhitpoints.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSupercarrierG2FighterHitpoints -# -# Used by: -# Variations of ship: Nyx (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", - src.getModifiedItemAttr("shipBonusSupercarrierG2"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg3warpstrength.py b/eos/effects/shipbonussupercarrierg3warpstrength.py deleted file mode 100644 index 5c361a79e..000000000 --- a/eos/effects/shipbonussupercarrierg3warpstrength.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSupercarrierG3WarpStrength -# -# Used by: -# Variations of ship: Nyx (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierG3"), - skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py b/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py deleted file mode 100644 index 74b6a3ba6..000000000 --- a/eos/effects/shipbonussupercarrierg4burstprojectorbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierG4BurstProjectorBonus -# -# Used by: -# Ship: Nyx -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), - "durationSensorDampeningBurstProjector", - src.getModifiedItemAttr("shipBonusSupercarrierG4"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py b/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py deleted file mode 100644 index aa6d4d1e2..000000000 --- a/eos/effects/shipbonussupercarrierg5warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusSupercarrierG5WarfareLinksBonus -# -# Used by: -# Ship: Nyx -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Armored Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusSupercarrierG5"), skill="Gallente Carrier") diff --git a/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py b/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py deleted file mode 100644 index 534d7357c..000000000 --- a/eos/effects/shipbonussupercarrierm1burstprojectorwebbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierM1BurstProjectorWebBonus -# -# Used by: -# Ship: Hel -# Ship: Vendetta -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), "speedFactor", - src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm1fighterdamage.py b/eos/effects/shipbonussupercarrierm1fighterdamage.py deleted file mode 100644 index 072aa2573..000000000 --- a/eos/effects/shipbonussupercarrierm1fighterdamage.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipBonusSupercarrierM1FighterDamage -# -# Used by: -# Ship: Hel -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("shipBonusSupercarrierM1"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm2fightervelocity.py b/eos/effects/shipbonussupercarrierm2fightervelocity.py deleted file mode 100644 index d908f242c..000000000 --- a/eos/effects/shipbonussupercarrierm2fightervelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierM2FighterVelocity -# -# Used by: -# Ship: Hel -# Ship: Vendetta -type = "passive" - - -def handler(fit, src, context): - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", - src.getModifiedItemAttr("shipBonusSupercarrierM2"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm3warpstrength.py b/eos/effects/shipbonussupercarrierm3warpstrength.py deleted file mode 100644 index dd652f578..000000000 --- a/eos/effects/shipbonussupercarrierm3warpstrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierM3WarpStrength -# -# Used by: -# Ship: Hel -# Ship: Vendetta -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusSupercarrierM3"), - skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py b/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py deleted file mode 100644 index d75b19a16..000000000 --- a/eos/effects/shipbonussupercarrierm4burstprojectorbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSupercarrierM4BurstProjectorBonus -# -# Used by: -# Ship: Hel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation"), - "durationTargetIlluminationBurstProjector", - src.getModifiedItemAttr("shipBonusSupercarrierM4"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py b/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py deleted file mode 100644 index 403b6c6a7..000000000 --- a/eos/effects/shipbonussupercarrierm5warfarelinksbonus.py +++ /dev/null @@ -1,23 +0,0 @@ -# shipBonusSupercarrierM5WarfareLinksBonus -# -# Used by: -# Ship: Hel -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff4Value", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff1Value", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff3Value", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "buffDuration", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Skirmish Command") or mod.item.requiresSkill("Shield Command"), - "warfareBuff2Value", src.getModifiedItemAttr("shipBonusSupercarrierM5"), skill="Minmatar Carrier") diff --git a/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py b/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py deleted file mode 100644 index 05dcff6a1..000000000 --- a/eos/effects/shipbonussupercarrierrole1numwarfarelinks.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusSupercarrierRole1NumWarfareLinks -# -# Used by: -# Ships from group: Supercarrier (6 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), "maxGroupActive", - src.getModifiedItemAttr("shipBonusRole1")) diff --git a/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py b/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py deleted file mode 100644 index 283256d6c..000000000 --- a/eos/effects/shipbonussupercarrierrole2armorshieldmodulebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusSupercarrierRole2ArmorShieldModuleBonus -# -# Used by: -# Ships from group: Supercarrier (6 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "armorHPBonusAdd", - src.getModifiedItemAttr("shipBonusRole2")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Upgrades"), "capacityBonus", - src.getModifiedItemAttr("shipBonusRole2")) diff --git a/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py b/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py deleted file mode 100644 index 4fc7124c5..000000000 --- a/eos/effects/shipbonussurveyprobeexplosiondelayskillsurveycovertops3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusSurveyProbeExplosionDelaySkillSurveyCovertOps3 -# -# Used by: -# Ships from group: Covert Ops (5 of 8) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Survey Probe", - "explosionDelay", ship.getModifiedItemAttr("eliteBonusCovertOps3"), - skill="Covert Ops") diff --git a/eos/effects/shipbonustargetpainteroptimalmf1.py b/eos/effects/shipbonustargetpainteroptimalmf1.py deleted file mode 100644 index da9b2c09f..000000000 --- a/eos/effects/shipbonustargetpainteroptimalmf1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusTargetPainterOptimalMF1 -# -# Used by: -# Ship: Hyena -# Ship: Vigil -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Target Painting"), - "maxRange", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonustdoptimalbonusaf1.py b/eos/effects/shipbonustdoptimalbonusaf1.py deleted file mode 100644 index 9ef068a92..000000000 --- a/eos/effects/shipbonustdoptimalbonusaf1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTDOptimalBonusAF1 -# -# Used by: -# Ship: Crucifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Weapon Disruption"), - "maxRange", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonusthermalarmorresistancead2.py b/eos/effects/shipbonusthermalarmorresistancead2.py deleted file mode 100644 index 3a1d5f206..000000000 --- a/eos/effects/shipbonusthermalarmorresistancead2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusThermalArmorResistanceAD2 -# -# Used by: -# Ship: Pontifex -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusAD2"), - skill="Amarr Destroyer") diff --git a/eos/effects/shipbonusthermalarmorresistancegd2.py b/eos/effects/shipbonusthermalarmorresistancegd2.py deleted file mode 100644 index 722d1b044..000000000 --- a/eos/effects/shipbonusthermalarmorresistancegd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusThermalArmorResistanceGD2 -# -# Used by: -# Ship: Magus -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", src.getModifiedItemAttr("shipBonusGD2"), - skill="Gallente Destroyer") diff --git a/eos/effects/shipbonusthermalmissiledamagecd1.py b/eos/effects/shipbonusthermalmissiledamagecd1.py deleted file mode 100644 index 514c58b4d..000000000 --- a/eos/effects/shipbonusthermalmissiledamagecd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusThermalMissileDamageCD1 -# -# Used by: -# Ship: Stork -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", - src.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipbonusthermalmissiledamagegb2.py b/eos/effects/shipbonusthermalmissiledamagegb2.py deleted file mode 100644 index 3903c3e7e..000000000 --- a/eos/effects/shipbonusthermalmissiledamagegb2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusThermalMissileDamageGB2 -# -# Used by: -# Ship: Rattlesnake -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusGB2"), - skill="Gallente Battleship") diff --git a/eos/effects/shipbonusthermalmissiledamagegc2.py b/eos/effects/shipbonusthermalmissiledamagegc2.py deleted file mode 100644 index e939aa4e6..000000000 --- a/eos/effects/shipbonusthermalmissiledamagegc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusThermalMissileDamageGC2 -# -# Used by: -# Ship: Chameleon -# Ship: Gila - -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonusthermalmissiledamagegf.py b/eos/effects/shipbonusthermalmissiledamagegf.py deleted file mode 100644 index 30d762728..000000000 --- a/eos/effects/shipbonusthermalmissiledamagegf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusThermalMissileDamageGF -# -# Used by: -# Ship: Whiptail -# Ship: Worm -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonusthermalshieldresistancemd2.py b/eos/effects/shipbonusthermalshieldresistancemd2.py deleted file mode 100644 index 5d41685a0..000000000 --- a/eos/effects/shipbonusthermalshieldresistancemd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusThermalShieldResistanceMD2 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusMD2"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonusthermicshieldresistancecb2.py b/eos/effects/shipbonusthermicshieldresistancecb2.py deleted file mode 100644 index 96067063f..000000000 --- a/eos/effects/shipbonusthermicshieldresistancecb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusThermicShieldResistanceCB2 -# -# Used by: -# Ship: Rattlesnake -# Ship: Rokh -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonus2CB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipbonusthermmissiledmgmd1.py b/eos/effects/shipbonusthermmissiledmgmd1.py deleted file mode 100644 index cb804bcc1..000000000 --- a/eos/effects/shipbonusthermmissiledmgmd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusThermMissileDmgMD1 -# -# Used by: -# Ship: Bifrost -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "thermalDamage", - src.getModifiedItemAttr("shipBonusMD1"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipbonustitana1damagebonus.py b/eos/effects/shipbonustitana1damagebonus.py deleted file mode 100644 index 92ec95b48..000000000 --- a/eos/effects/shipbonustitana1damagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanA1DamageBonus -# -# Used by: -# Ship: Avatar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusTitanA1"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitana1energywarfareamountbonus.py b/eos/effects/shipbonustitana1energywarfareamountbonus.py deleted file mode 100644 index 596439814..000000000 --- a/eos/effects/shipbonustitana1energywarfareamountbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusTitanA1EnergyWarfareAmountBonus -# -# Used by: -# Ship: Molok -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", src.getModifiedItemAttr("shipBonusTitanA1"), skill="Amarr Titan") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", src.getModifiedItemAttr("shipBonusTitanA1"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitana2capneed.py b/eos/effects/shipbonustitana2capneed.py deleted file mode 100644 index 93084ad75..000000000 --- a/eos/effects/shipbonustitana2capneed.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanA2CapNeed -# -# Used by: -# Ship: Avatar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Energy Turret"), "capacitorNeed", - src.getModifiedItemAttr("shipBonusTitanA2"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitana3warpstrength.py b/eos/effects/shipbonustitana3warpstrength.py deleted file mode 100644 index f89d421c4..000000000 --- a/eos/effects/shipbonustitana3warpstrength.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusTitanA3WarpStrength -# -# Used by: -# Variations of ship: Avatar (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanA3"), skill="Amarr Titan") diff --git a/eos/effects/shipbonustitanc1kindamagebonus.py b/eos/effects/shipbonustitanc1kindamagebonus.py deleted file mode 100644 index 08ea4ea52..000000000 --- a/eos/effects/shipbonustitanc1kindamagebonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusTitanC1KinDamageBonus -# -# Used by: -# Ship: Leviathan -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc1shieldresists.py b/eos/effects/shipbonustitanc1shieldresists.py deleted file mode 100644 index 2216bea00..000000000 --- a/eos/effects/shipbonustitanc1shieldresists.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipBonusTitanC1ShieldResists -# -# Used by: -# Ship: Komodo -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.ship.boostItemAttr("shieldEmDamageResonance", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") - fit.ship.boostItemAttr("shieldThermalDamageResonance", src.getModifiedItemAttr("shipBonusTitanC1"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc2rofbonus.py b/eos/effects/shipbonustitanc2rofbonus.py deleted file mode 100644 index 52ce60bda..000000000 --- a/eos/effects/shipbonustitanc2rofbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipBonusTitanC2ROFBonus -# -# Used by: -# Variations of ship: Leviathan (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher XL Cruise", "speed", - src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rapid Torpedo", "speed", - src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher XL Torpedo", "speed", - src.getModifiedItemAttr("shipBonusTitanC2"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc3warpstrength.py b/eos/effects/shipbonustitanc3warpstrength.py deleted file mode 100644 index 2932f5fc1..000000000 --- a/eos/effects/shipbonustitanc3warpstrength.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusTitanC3WarpStrength -# -# Used by: -# Variations of ship: Leviathan (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanC3"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitanc5alldamagebonus.py b/eos/effects/shipbonustitanc5alldamagebonus.py deleted file mode 100644 index 13c64f8f2..000000000 --- a/eos/effects/shipbonustitanc5alldamagebonus.py +++ /dev/null @@ -1,26 +0,0 @@ -# shipBonusTitanC5AllDamageBonus -# -# Used by: -# Ship: Leviathan -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Cruise Missiles"), "emDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("XL Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusTitanC5"), skill="Caldari Titan") diff --git a/eos/effects/shipbonustitang1damagebonus.py b/eos/effects/shipbonustitang1damagebonus.py deleted file mode 100644 index e44f41f53..000000000 --- a/eos/effects/shipbonustitang1damagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanG1DamageBonus -# -# Used by: -# Ship: Erebus -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang1kinthermdamagebonus.py b/eos/effects/shipbonustitang1kinthermdamagebonus.py deleted file mode 100644 index 7e8745859..000000000 --- a/eos/effects/shipbonustitang1kinthermdamagebonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# shipBonusTitanG1KinThermDamageBonus -# -# Used by: -# Ship: Komodo -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusTitanG1"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang2emexplosivedamagebonus.py b/eos/effects/shipbonustitang2emexplosivedamagebonus.py deleted file mode 100644 index d98b44d4b..000000000 --- a/eos/effects/shipbonustitang2emexplosivedamagebonus.py +++ /dev/null @@ -1,20 +0,0 @@ -# shipBonusTitanG2EMExplosiveDamageBonus -# -# Used by: -# Ship: Komodo -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), "emDamage", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang2rofbonus.py b/eos/effects/shipbonustitang2rofbonus.py deleted file mode 100644 index 87c12394d..000000000 --- a/eos/effects/shipbonustitang2rofbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanG2ROFBonus -# -# Used by: -# Variations of ship: Erebus (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Hybrid Turret"), "speed", - src.getModifiedItemAttr("shipBonusTitanG2"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitang3warpstrength.py b/eos/effects/shipbonustitang3warpstrength.py deleted file mode 100644 index 460e39b5d..000000000 --- a/eos/effects/shipbonustitang3warpstrength.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanG3WarpStrength -# -# Used by: -# Variations of ship: Erebus (2 of 2) -# Ship: Komodo -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanG3"), skill="Gallente Titan") diff --git a/eos/effects/shipbonustitanm1damagebonus.py b/eos/effects/shipbonustitanm1damagebonus.py deleted file mode 100644 index 538a0d8fc..000000000 --- a/eos/effects/shipbonustitanm1damagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanM1DamageBonus -# -# Used by: -# Ship: Ragnarok -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm1webrangebonus.py b/eos/effects/shipbonustitanm1webrangebonus.py deleted file mode 100644 index c026e376e..000000000 --- a/eos/effects/shipbonustitanm1webrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanM1WebRangeBonus -# -# Used by: -# Ship: Molok -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm1webstrengthbonus.py b/eos/effects/shipbonustitanm1webstrengthbonus.py deleted file mode 100644 index 54ba011c7..000000000 --- a/eos/effects/shipbonustitanm1webstrengthbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanM1WebStrengthBonus -# -# Used by: -# Ship: Vanquisher -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", "speedFactor", - src.getModifiedItemAttr("shipBonusTitanM1"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm2rofbonus.py b/eos/effects/shipbonustitanm2rofbonus.py deleted file mode 100644 index 477698082..000000000 --- a/eos/effects/shipbonustitanm2rofbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTitanM2ROFBonus -# -# Used by: -# Ship: Ragnarok -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Projectile Turret"), "speed", - src.getModifiedItemAttr("shipBonusTitanM2"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustitanm3warpstrength.py b/eos/effects/shipbonustitanm3warpstrength.py deleted file mode 100644 index 2a56e6404..000000000 --- a/eos/effects/shipbonustitanm3warpstrength.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipBonusTitanM3WarpStrength -# -# Used by: -# Ships from group: Titan (3 of 7) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("warpScrambleStatus", src.getModifiedItemAttr("shipBonusTitanM3"), skill="Minmatar Titan") diff --git a/eos/effects/shipbonustorpedomissileemdmgmb.py b/eos/effects/shipbonustorpedomissileemdmgmb.py deleted file mode 100644 index d0035967d..000000000 --- a/eos/effects/shipbonustorpedomissileemdmgmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTorpedoMissileEMDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "emDamage", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedomissileexplodmgmb.py b/eos/effects/shipbonustorpedomissileexplodmgmb.py deleted file mode 100644 index 75ddfe45e..000000000 --- a/eos/effects/shipbonustorpedomissileexplodmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusTorpedoMissileExploDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedomissilekineticdmgmb.py b/eos/effects/shipbonustorpedomissilekineticdmgmb.py deleted file mode 100644 index 34aaf86f6..000000000 --- a/eos/effects/shipbonustorpedomissilekineticdmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusTorpedoMissileKineticDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedomissilethermdmgmb.py b/eos/effects/shipbonustorpedomissilethermdmgmb.py deleted file mode 100644 index ea7d1baff..000000000 --- a/eos/effects/shipbonustorpedomissilethermdmgmb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusTorpedoMissileThermDmgMB -# -# Used by: -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedorofmb.py b/eos/effects/shipbonustorpedorofmb.py deleted file mode 100644 index 2695607ea..000000000 --- a/eos/effects/shipbonustorpedorofmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTorpedoROFMB -# -# Used by: -# Ship: Typhoon -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", - "speed", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipbonustorpedovelocity2af.py b/eos/effects/shipbonustorpedovelocity2af.py deleted file mode 100644 index 0109217d5..000000000 --- a/eos/effects/shipbonustorpedovelocity2af.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTorpedoVelocity2AF -# -# Used by: -# Ship: Purifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipbonustorpedovelocitycf2.py b/eos/effects/shipbonustorpedovelocitycf2.py deleted file mode 100644 index 5c779651b..000000000 --- a/eos/effects/shipbonustorpedovelocitycf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTorpedoVelocityCF2 -# -# Used by: -# Ship: Manticore -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipbonustorpedovelocitygf2.py b/eos/effects/shipbonustorpedovelocitygf2.py deleted file mode 100644 index a52c4046d..000000000 --- a/eos/effects/shipbonustorpedovelocitygf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusTorpedoVelocityGF2 -# -# Used by: -# Ship: Nemesis -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonustorpedovelocitymf2.py b/eos/effects/shipbonustorpedovelocitymf2.py deleted file mode 100644 index cf5a4385a..000000000 --- a/eos/effects/shipbonustorpedovelocitymf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusTorpedoVelocityMF2 -# -# Used by: -# Ship: Hound -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipbonusvelocityci.py b/eos/effects/shipbonusvelocityci.py deleted file mode 100644 index 9f34a3e72..000000000 --- a/eos/effects/shipbonusvelocityci.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusVelocityCI -# -# Used by: -# Variations of ship: Tayra (2 of 2) -# Ship: Crane -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusCI"), skill="Caldari Industrial") diff --git a/eos/effects/shipbonusvelocitygi.py b/eos/effects/shipbonusvelocitygi.py deleted file mode 100644 index b032ee1d1..000000000 --- a/eos/effects/shipbonusvelocitygi.py +++ /dev/null @@ -1,19 +0,0 @@ -# shipBonusVelocityGI -# -# Used by: -# Variations of ship: Epithal (2 of 2) -# Variations of ship: Miasmos (4 of 4) -# Ship: Iteron Mark V -# Ship: Kryos -# Ship: Viator -type = "passive" - - -def handler(fit, ship, context): - # TODO: investigate if we can live without such ifs or hardcoding - # Viator doesn't have GI bonus - if "shipBonusGI" in fit.ship.item.attributes: - bonusAttr = "shipBonusGI" - else: - bonusAttr = "shipBonusGI2" - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr(bonusAttr), skill="Gallente Industrial") diff --git a/eos/effects/shipbonuswarpscramblemaxrangegb.py b/eos/effects/shipbonuswarpscramblemaxrangegb.py deleted file mode 100644 index a26ffadbe..000000000 --- a/eos/effects/shipbonuswarpscramblemaxrangegb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipBonusWarpScrambleMaxRangeGB -# -# Used by: -# Ship: Barghest -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shipbonuswarpscramblermaxrangegc2.py b/eos/effects/shipbonuswarpscramblermaxrangegc2.py deleted file mode 100644 index 84afce09b..000000000 --- a/eos/effects/shipbonuswarpscramblermaxrangegc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusWarpScramblerMaxRangeGC2 -# -# Used by: -# Ship: Adrestia -# Ship: Orthrus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipbonuswarpscramblermaxrangegf2.py b/eos/effects/shipbonuswarpscramblermaxrangegf2.py deleted file mode 100644 index 77fd29e73..000000000 --- a/eos/effects/shipbonuswarpscramblermaxrangegf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipBonusWarpScramblerMaxRangeGF2 -# -# Used by: -# Ship: Garmur -# Ship: Utu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", - "maxRange", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipbonuswdfgnullpenalties.py b/eos/effects/shipbonuswdfgnullpenalties.py deleted file mode 100644 index 0a1050711..000000000 --- a/eos/effects/shipbonuswdfgnullpenalties.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipBonusWDFGnullPenalties -# -# Used by: -# Ship: Fiend -runTime = "early" -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Propulsion Jamming"), - "speedFactorBonus", ship.getModifiedItemAttr("shipBonusAT")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Propulsion Jamming"), - "speedBoostFactorBonus", ship.getModifiedItemAttr("shipBonusAT")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Propulsion Jamming"), - "massBonusPercentage", ship.getModifiedItemAttr("shipBonusAT")) diff --git a/eos/effects/shipcapitalagilitybonus.py b/eos/effects/shipcapitalagilitybonus.py deleted file mode 100644 index 05b0beb25..000000000 --- a/eos/effects/shipcapitalagilitybonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipCapitalAgilityBonus -# -# Used by: -# Items from market group: Ships > Capital Ships (31 of 40) -type = "passive" - - -def handler(fit, src, context): - fit.ship.multiplyItemAttr("agility", src.getModifiedItemAttr("advancedCapitalAgility"), stackingPenalties=True) diff --git a/eos/effects/shipcapneedbonusab.py b/eos/effects/shipcapneedbonusab.py deleted file mode 100644 index 84fb447cc..000000000 --- a/eos/effects/shipcapneedbonusab.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipCapNeedBonusAB -# -# Used by: -# Variations of ship: Armageddon (3 of 5) -# Ship: Apocalypse Imperial Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusAB"), skill="Amarr Battleship") diff --git a/eos/effects/shipcappropulsionjamming.py b/eos/effects/shipcappropulsionjamming.py deleted file mode 100644 index eb349db5c..000000000 --- a/eos/effects/shipcappropulsionjamming.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipCapPropulsionJamming -# -# Used by: -# Ships from group: Interceptor (10 of 10) -# Ship: Atron -# Ship: Condor -# Ship: Executioner -# Ship: Slasher -type = "passive" - - -def handler(fit, ship, context): - groups = ("Stasis Web", "Warp Scrambler") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", ship.getModifiedItemAttr("eliteBonusInterceptorRole")) diff --git a/eos/effects/shipcaprecharge2af.py b/eos/effects/shipcaprecharge2af.py deleted file mode 100644 index 5822015f5..000000000 --- a/eos/effects/shipcaprecharge2af.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipCapRecharge2AF -# -# Used by: -# Ship: Anathema -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("rechargeRate", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipcargobonusai.py b/eos/effects/shipcargobonusai.py deleted file mode 100644 index 8e4dcae18..000000000 --- a/eos/effects/shipcargobonusai.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipCargoBonusAI -# -# Used by: -# Variations of ship: Sigil (2 of 2) -# Ship: Bestower -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("capacity", ship.getModifiedItemAttr("shipBonusAI"), skill="Amarr Industrial") diff --git a/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py b/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py deleted file mode 100644 index fd57fb534..000000000 --- a/eos/effects/shipconsumptionquantitybonusindustrialreconfigurationorecapital1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipConsumptionQuantityBonusIndustrialReconfigurationORECapital1 -# -# Used by: -# Ship: Rorqual -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Industrial Reconfiguration"), - "consumptionQuantity", ship.getModifiedItemAttr("shipBonusORECapital1"), - skill="Capital Industrial Ships") diff --git a/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py b/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py deleted file mode 100644 index 755ca5cae..000000000 --- a/eos/effects/shipcruiseandsiegelauncherrofbonus2cb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipCruiseAndSiegeLauncherROFBonus2CB -# -# Used by: -# Ship: Widow -type = "passive" - - -def handler(fit, ship, context): - affectedGroups = ("Missile Launcher Cruise", "Missile Launcher Torpedo") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in affectedGroups, - "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py b/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py deleted file mode 100644 index e3b31c683..000000000 --- a/eos/effects/shipcruiseandtorpedovelocitybonuscb3.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipCruiseAndTorpedoVelocityBonusCB3 -# -# Used by: -# Ship: Golem -# Ship: Widow -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Cruise Missiles") or mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruiselauncherrofbonus2cb.py b/eos/effects/shipcruiselauncherrofbonus2cb.py deleted file mode 100644 index e525b593f..000000000 --- a/eos/effects/shipcruiselauncherrofbonus2cb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipCruiseLauncherROFBonus2CB -# -# Used by: -# Ship: Raven -# Ship: Raven State Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", - "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruisemissileaoecloudsize1cb.py b/eos/effects/shipcruisemissileaoecloudsize1cb.py deleted file mode 100644 index e1d7c2557..000000000 --- a/eos/effects/shipcruisemissileaoecloudsize1cb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipCruiseMissileAOECloudSize1CB -# -# Used by: -# Ship: Raven Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruisemissilerofcb.py b/eos/effects/shipcruisemissilerofcb.py deleted file mode 100644 index 268e7d96a..000000000 --- a/eos/effects/shipcruisemissilerofcb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipCruiseMissileROFCB -# -# Used by: -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Cruise", - "speed", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipcruisemissilevelocitybonuscb3.py b/eos/effects/shipcruisemissilevelocitybonuscb3.py deleted file mode 100644 index b690761be..000000000 --- a/eos/effects/shipcruisemissilevelocitybonuscb3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipCruiseMissileVelocityBonusCB3 -# -# Used by: -# Variations of ship: Raven (3 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/shipdronemwdspeedbonusrookie.py b/eos/effects/shipdronemwdspeedbonusrookie.py deleted file mode 100644 index 0bb5910d9..000000000 --- a/eos/effects/shipdronemwdspeedbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipDroneMWDSpeedBonusRookie -# -# Used by: -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda mod: True, - "maxVelocity", ship.getModifiedItemAttr("rookieDroneMWDspeed")) diff --git a/eos/effects/shipdronescoutthermaldamagegf2.py b/eos/effects/shipdronescoutthermaldamagegf2.py deleted file mode 100644 index 54f7716e0..000000000 --- a/eos/effects/shipdronescoutthermaldamagegf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipDroneScoutThermalDamageGF2 -# -# Used by: -# Ship: Helios -type = "passive" - - -def handler(fit, ship, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Light Drone Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusGF2"), skill="Gallente Frigate") diff --git a/eos/effects/shipdronesmaxgc2.py b/eos/effects/shipdronesmaxgc2.py deleted file mode 100644 index 16390827e..000000000 --- a/eos/effects/shipdronesmaxgc2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipDronesMaxGC2 -# -# Used by: -# Ship: Guardian-Vexor -type = "passive" - - -def handler(fit, ship, context): - fit.extraAttributes.increase("maxActiveDrones", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shipecmscanstrengthbonuscf.py b/eos/effects/shipecmscanstrengthbonuscf.py deleted file mode 100644 index 6d1640619..000000000 --- a/eos/effects/shipecmscanstrengthbonuscf.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipECMScanStrengthBonusCF -# -# Used by: -# Variations of ship: Griffin (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - for type in ("Gravimetric", "Ladar", "Radar", "Magnetometric"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scan{0}StrengthBonus".format(type), - ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipecmscanstrengthbonusrookie.py b/eos/effects/shipecmscanstrengthbonusrookie.py deleted file mode 100644 index 312932605..000000000 --- a/eos/effects/shipecmscanstrengthbonusrookie.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipECMScanStrengthBonusRookie -# -# Used by: -# Ship: Ibis -type = "passive" - - -def handler(fit, ship, context): - for type in ("Gravimetric", "Ladar", "Radar", "Magnetometric"): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", - "scan{0}StrengthBonus".format(type), - ship.getModifiedItemAttr("rookieECMStrengthBonus")) diff --git a/eos/effects/shipenergydrainamountaf1.py b/eos/effects/shipenergydrainamountaf1.py deleted file mode 100644 index 429fd4b91..000000000 --- a/eos/effects/shipenergydrainamountaf1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipEnergyDrainAmountAF1 -# -# Used by: -# Ship: Caedes -# Ship: Cruor -# Ship: Sentinel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusab.py b/eos/effects/shipenergyneutralizertransferamountbonusab.py deleted file mode 100644 index 925a33c92..000000000 --- a/eos/effects/shipenergyneutralizertransferamountbonusab.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipEnergyNeutralizerTransferAmountBonusAB -# -# Used by: -# Ship: Bhaalgorn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAB"), - skill="Amarr Battleship") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusac.py b/eos/effects/shipenergyneutralizertransferamountbonusac.py deleted file mode 100644 index 4dfc4dc87..000000000 --- a/eos/effects/shipenergyneutralizertransferamountbonusac.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipEnergyNeutralizerTransferAmountBonusAC -# -# Used by: -# Ship: Ashimmu -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAC"), - skill="Amarr Cruiser") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusaf.py b/eos/effects/shipenergyneutralizertransferamountbonusaf.py deleted file mode 100644 index 76b6c1f33..000000000 --- a/eos/effects/shipenergyneutralizertransferamountbonusaf.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipEnergyNeutralizerTransferAmountBonusAF -# -# Used by: -# Ship: Caedes -# Ship: Cruor -# Ship: Sentinel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonusAF"), - skill="Amarr Frigate") diff --git a/eos/effects/shipenergyneutralizertransferamountbonusaf2.py b/eos/effects/shipenergyneutralizertransferamountbonusaf2.py deleted file mode 100644 index 529e6651e..000000000 --- a/eos/effects/shipenergyneutralizertransferamountbonusaf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipEnergyNeutralizerTransferAmountBonusAF2 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("shipBonus2AF"), - skill="Amarr Frigate") diff --git a/eos/effects/shipenergytcapneedbonusaf.py b/eos/effects/shipenergytcapneedbonusaf.py deleted file mode 100644 index ecac0f30c..000000000 --- a/eos/effects/shipenergytcapneedbonusaf.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipEnergyTCapNeedBonusAF -# -# Used by: -# Ship: Crusader -# Ship: Executioner -# Ship: Gold Magnate -# Ship: Punisher -# Ship: Retribution -# Ship: Silver Magnate -# Ship: Tormentor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipenergytcapneedbonusrookie.py b/eos/effects/shipenergytcapneedbonusrookie.py deleted file mode 100644 index 4372da104..000000000 --- a/eos/effects/shipenergytcapneedbonusrookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipEnergyTCapNeedBonusRookie -# -# Used by: -# Ship: Hematos -# Ship: Impairor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("rookieSETCapBonus")) diff --git a/eos/effects/shipenergytrackingabc1.py b/eos/effects/shipenergytrackingabc1.py deleted file mode 100644 index f88ec12de..000000000 --- a/eos/effects/shipenergytrackingabc1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipEnergyTrackingABC1 -# -# Used by: -# Ship: Harbinger Navy Issue - -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shipenergytransferrange1.py b/eos/effects/shipenergytransferrange1.py deleted file mode 100644 index 95b5cac92..000000000 --- a/eos/effects/shipenergytransferrange1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipEnergyTransferRange1 -# -# Used by: -# Ship: Guardian -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "maxRange", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipenergytransferrange2.py b/eos/effects/shipenergytransferrange2.py deleted file mode 100644 index 3f65366f2..000000000 --- a/eos/effects/shipenergytransferrange2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipEnergyTransferRange2 -# -# Used by: -# Ship: Basilisk -# Ship: Etana -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "maxRange", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipenergyvampireamountbonusfixedaf2.py b/eos/effects/shipenergyvampireamountbonusfixedaf2.py deleted file mode 100644 index e48b89b06..000000000 --- a/eos/effects/shipenergyvampireamountbonusfixedaf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipEnergyVampireAmountBonusFixedAF2 -# -# Used by: -# Ship: Malice -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("shipBonus2AF"), - skill="Amarr Frigate") diff --git a/eos/effects/shipenergyvampiretransferamountbonusab.py b/eos/effects/shipenergyvampiretransferamountbonusab.py deleted file mode 100644 index 288f21609..000000000 --- a/eos/effects/shipenergyvampiretransferamountbonusab.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipEnergyVampireTransferAmountBonusAB -# -# Used by: -# Ship: Bhaalgorn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAB"), - skill="Amarr Battleship") diff --git a/eos/effects/shipenergyvampiretransferamountbonusac.py b/eos/effects/shipenergyvampiretransferamountbonusac.py deleted file mode 100644 index f9a831cf3..000000000 --- a/eos/effects/shipenergyvampiretransferamountbonusac.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipEnergyVampireTransferAmountBonusAc -# -# Used by: -# Ship: Ashimmu -# Ship: Rabisu -# Ship: Vangel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipetdamageaf.py b/eos/effects/shipetdamageaf.py deleted file mode 100644 index 939e163fa..000000000 --- a/eos/effects/shipetdamageaf.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipETDamageAF -# -# Used by: -# Ship: Crucifier Navy Issue -# Ship: Crusader -# Ship: Imperial Navy Slicer -# Ship: Pacifier -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipetoptimalrange2af.py b/eos/effects/shipetoptimalrange2af.py deleted file mode 100644 index 99b829ab7..000000000 --- a/eos/effects/shipetoptimalrange2af.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipETOptimalRange2AF -# -# Used by: -# Ship: Imperial Navy Slicer -# Ship: Pacifier -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipetspeedbonusab2.py b/eos/effects/shipetspeedbonusab2.py deleted file mode 100644 index 73ffd229d..000000000 --- a/eos/effects/shipetspeedbonusab2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipETspeedBonusAB2 -# -# Used by: -# Variations of ship: Armageddon (3 of 5) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "speed", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipfalloffbonusmf.py b/eos/effects/shipfalloffbonusmf.py deleted file mode 100644 index 39ec4e71d..000000000 --- a/eos/effects/shipfalloffbonusmf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipFalloffBonusMF -# -# Used by: -# Ship: Chremoas -# Ship: Dramiel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipgchyieldbonusorefrig2.py b/eos/effects/shipgchyieldbonusorefrig2.py deleted file mode 100644 index 23749fa44..000000000 --- a/eos/effects/shipgchyieldbonusorefrig2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipGCHYieldBonusOREfrig2 -# -# Used by: -# Ship: Prospect -# Ship: Venture -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Gas Cloud Harvester", - "duration", module.getModifiedItemAttr("shipBonusOREfrig2"), skill="Mining Frigate") diff --git a/eos/effects/shipheatdamageamarrtacticaldestroyer3.py b/eos/effects/shipheatdamageamarrtacticaldestroyer3.py deleted file mode 100644 index 60007905d..000000000 --- a/eos/effects/shipheatdamageamarrtacticaldestroyer3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHeatDamageAmarrTacticalDestroyer3 -# -# Used by: -# Ship: Confessor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr3"), - skill="Amarr Tactical Destroyer") diff --git a/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py b/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py deleted file mode 100644 index afe1aa44d..000000000 --- a/eos/effects/shipheatdamagecaldaritacticaldestroyer3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHeatDamageCaldariTacticalDestroyer3 -# -# Used by: -# Ship: Jackdaw -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari3"), - skill="Caldari Tactical Destroyer") diff --git a/eos/effects/shipheatdamagegallentetacticaldestroyer3.py b/eos/effects/shipheatdamagegallentetacticaldestroyer3.py deleted file mode 100644 index b5854c3fb..000000000 --- a/eos/effects/shipheatdamagegallentetacticaldestroyer3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHeatDamageGallenteTacticalDestroyer3 -# -# Used by: -# Ship: Hecate -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente3"), - skill="Gallente Tactical Destroyer") diff --git a/eos/effects/shipheatdamageminmatartacticaldestroyer3.py b/eos/effects/shipheatdamageminmatartacticaldestroyer3.py deleted file mode 100644 index 30b0d22fb..000000000 --- a/eos/effects/shipheatdamageminmatartacticaldestroyer3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHeatDamageMinmatarTacticalDestroyer3 -# -# Used by: -# Ship: Svipul -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar3"), - skill="Minmatar Tactical Destroyer") diff --git a/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py b/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py deleted file mode 100644 index 2ef68bd9f..000000000 --- a/eos/effects/shipheavyassaultmissileaoecloudsizecbc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHeavyAssaultMissileAOECloudSizeCBC1 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCBC1"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py b/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py deleted file mode 100644 index f9cbb40c3..000000000 --- a/eos/effects/shipheavyassaultmissileaoecloudsizecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyAssaultMissileAOECloudSizeCC2 -# -# Used by: -# Ship: Caracal Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py b/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py deleted file mode 100644 index c75875c24..000000000 --- a/eos/effects/shipheavyassaultmissileemandexpandkinandthmdmgac1.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipHeavyAssaultMissileEMAndExpAndKinAndThmDmgAC1 -# -# Used by: -# Ship: Sacrilege -type = "passive" - - -def handler(fit, ship, context): - damageTypes = ("em", "explosive", "kinetic", "thermal") - for damageType in damageTypes: - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusAC"), - skill="Amarr Cruiser") diff --git a/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py b/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py deleted file mode 100644 index 4aff9d4a1..000000000 --- a/eos/effects/shipheavyassaultmissileemdmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyAssaultMissileEMDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py b/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py deleted file mode 100644 index be21d8f51..000000000 --- a/eos/effects/shipheavyassaultmissileexpdmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyAssaultMissileExpDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py b/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py deleted file mode 100644 index bbc9b2a43..000000000 --- a/eos/effects/shipheavyassaultmissilekindmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyAssaultMissileKinDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py b/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py deleted file mode 100644 index 928d0a52c..000000000 --- a/eos/effects/shipheavyassaultmissilethermdmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyAssaultMissileThermDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavymissileaoecloudsizecbc1.py b/eos/effects/shipheavymissileaoecloudsizecbc1.py deleted file mode 100644 index e7046f2ad..000000000 --- a/eos/effects/shipheavymissileaoecloudsizecbc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHeavyMissileAOECloudSizeCBC1 -# -# Used by: -# Ship: Drake Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCBC1"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipheavymissileaoecloudsizecc2.py b/eos/effects/shipheavymissileaoecloudsizecc2.py deleted file mode 100644 index 971e15bae..000000000 --- a/eos/effects/shipheavymissileaoecloudsizecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyMissileAOECloudSizeCC2 -# -# Used by: -# Ship: Caracal Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipheavymissileemdmgpiratecruiser.py b/eos/effects/shipheavymissileemdmgpiratecruiser.py deleted file mode 100644 index 2b3003818..000000000 --- a/eos/effects/shipheavymissileemdmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyMissileEMDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavymissileexpdmgpiratecruiser.py b/eos/effects/shipheavymissileexpdmgpiratecruiser.py deleted file mode 100644 index 73ca9bf7f..000000000 --- a/eos/effects/shipheavymissileexpdmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyMissileExpDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavymissilekindmgpiratecruiser.py b/eos/effects/shipheavymissilekindmgpiratecruiser.py deleted file mode 100644 index e1efd07ec..000000000 --- a/eos/effects/shipheavymissilekindmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyMissileKinDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipheavymissilethermdmgpiratecruiser.py b/eos/effects/shipheavymissilethermdmgpiratecruiser.py deleted file mode 100644 index 28990be6a..000000000 --- a/eos/effects/shipheavymissilethermdmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHeavyMissileThermDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shiphrangebonuscc.py b/eos/effects/shiphrangebonuscc.py deleted file mode 100644 index 644ee7a88..000000000 --- a/eos/effects/shiphrangebonuscc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHRangeBonusCC -# -# Used by: -# Ship: Eagle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shiphtdamagebonuscc.py b/eos/effects/shiphtdamagebonuscc.py deleted file mode 100644 index 1cc54e2c7..000000000 --- a/eos/effects/shiphtdamagebonuscc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHTDamageBonusCC -# -# Used by: -# Ship: Moa -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shiphtdmgbonusfixedgc.py b/eos/effects/shiphtdmgbonusfixedgc.py deleted file mode 100644 index e6dfd16a2..000000000 --- a/eos/effects/shiphtdmgbonusfixedgc.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipHTDmgBonusfixedGC -# -# Used by: -# Ship: Adrestia -# Ship: Arazu -# Ship: Deimos -# Ship: Enforcer -# Ship: Exequror Navy Issue -# Ship: Guardian-Vexor -# Ship: Thorax -# Ship: Vexor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphtdmgbonusgb.py b/eos/effects/shiphtdmgbonusgb.py deleted file mode 100644 index db7ef2e93..000000000 --- a/eos/effects/shiphtdmgbonusgb.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipHTDmgBonusGB -# -# Used by: -# Ship: Dominix Navy Issue -# Ship: Hyperion -# Ship: Kronos -# Ship: Marshal -# Ship: Megathron Federate Issue -# Ship: Sin -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGB"), - skill="Gallente Battleship") diff --git a/eos/effects/shiphttrackingbonusgb.py b/eos/effects/shiphttrackingbonusgb.py deleted file mode 100644 index 60c79d649..000000000 --- a/eos/effects/shiphttrackingbonusgb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHTTrackingBonusGB -# -# Used by: -# Ship: Vindicator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shiphttrackingbonusgb2.py b/eos/effects/shiphttrackingbonusgb2.py deleted file mode 100644 index 244003ecd..000000000 --- a/eos/effects/shiphttrackingbonusgb2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipHTTrackingBonusGB2 -# -# Used by: -# Ships named like: Megathron (3 of 3) -# Ship: Marshal -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGB2"), - skill="Gallente Battleship") diff --git a/eos/effects/shiphturretfalloffbonusgc.py b/eos/effects/shiphturretfalloffbonusgc.py deleted file mode 100644 index 61fefdc54..000000000 --- a/eos/effects/shiphturretfalloffbonusgc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHTurretFalloffBonusGC -# -# Used by: -# Ship: Victor -# Ship: Vigilant -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphybriddamagebonuscbc2.py b/eos/effects/shiphybriddamagebonuscbc2.py deleted file mode 100644 index 50f4304ce..000000000 --- a/eos/effects/shiphybriddamagebonuscbc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridDamageBonusCBC2 -# -# Used by: -# Ship: Naga -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCBC2"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybriddamagebonuscf.py b/eos/effects/shiphybriddamagebonuscf.py deleted file mode 100644 index a10dafe76..000000000 --- a/eos/effects/shiphybriddamagebonuscf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridDamageBonusCF -# -# Used by: -# Ship: Raptor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shiphybriddamagebonuscf2.py b/eos/effects/shiphybriddamagebonuscf2.py deleted file mode 100644 index 3ea6ddc9f..000000000 --- a/eos/effects/shiphybriddamagebonuscf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridDamageBonusCF2 -# -# Used by: -# Ship: Griffin Navy Issue -# Ship: Merlin -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shiphybriddamagebonusgbc2.py b/eos/effects/shiphybriddamagebonusgbc2.py deleted file mode 100644 index 7ae28ba58..000000000 --- a/eos/effects/shiphybriddamagebonusgbc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridDamageBonusGBC2 -# -# Used by: -# Ship: Talos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC2"), - skill="Gallente Battlecruiser") diff --git a/eos/effects/shiphybriddmg1cbc2.py b/eos/effects/shiphybriddmg1cbc2.py deleted file mode 100644 index 825685ea1..000000000 --- a/eos/effects/shiphybriddmg1cbc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridDmg1CBC2 -# -# Used by: -# Ship: Ferox -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusCBC2"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybriddmg1gbc1.py b/eos/effects/shiphybriddmg1gbc1.py deleted file mode 100644 index d99d40c26..000000000 --- a/eos/effects/shiphybriddmg1gbc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridDmg1GBC1 -# -# Used by: -# Variations of ship: Brutix (3 of 3) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGBC1"), - skill="Gallente Battlecruiser") diff --git a/eos/effects/shiphybriddmgpiratebattleship.py b/eos/effects/shiphybriddmgpiratebattleship.py deleted file mode 100644 index 417ed58aa..000000000 --- a/eos/effects/shiphybriddmgpiratebattleship.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridDmgPirateBattleship -# -# Used by: -# Ship: Vindicator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shiphybriddmgpiratecruiser.py b/eos/effects/shiphybriddmgpiratecruiser.py deleted file mode 100644 index 7d01b20c6..000000000 --- a/eos/effects/shiphybriddmgpiratecruiser.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -# Ship: Vigilant -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shiphybridfalloff1gd1.py b/eos/effects/shiphybridfalloff1gd1.py deleted file mode 100644 index 69a04334d..000000000 --- a/eos/effects/shiphybridfalloff1gd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridFallOff1GD1 -# -# Used by: -# Ship: Catalyst -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shiphybridoptimal1cbc1.py b/eos/effects/shiphybridoptimal1cbc1.py deleted file mode 100644 index 28f6a8c2e..000000000 --- a/eos/effects/shiphybridoptimal1cbc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridOptimal1CBC1 -# -# Used by: -# Variations of ship: Ferox (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybridoptimalgd1.py b/eos/effects/shiphybridoptimalgd1.py deleted file mode 100644 index 0124b48cd..000000000 --- a/eos/effects/shiphybridoptimalgd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridOptimalGD1 -# -# Used by: -# Ship: Eris -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusGD1"), skill="Gallente Destroyer") diff --git a/eos/effects/shiphybridrange1cd1.py b/eos/effects/shiphybridrange1cd1.py deleted file mode 100644 index ea35b9785..000000000 --- a/eos/effects/shiphybridrange1cd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridRange1CD1 -# -# Used by: -# Ship: Cormorant -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shiphybridrangebonuscbc1.py b/eos/effects/shiphybridrangebonuscbc1.py deleted file mode 100644 index ec1572d8b..000000000 --- a/eos/effects/shiphybridrangebonuscbc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridRangeBonusCBC1 -# -# Used by: -# Ship: Naga -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCBC1"), skill="Caldari Battlecruiser") diff --git a/eos/effects/shiphybridrangebonuscf2.py b/eos/effects/shiphybridrangebonuscf2.py deleted file mode 100644 index 08e85c17c..000000000 --- a/eos/effects/shiphybridrangebonuscf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridRangeBonusCF2 -# -# Used by: -# Ship: Harpy -# Ship: Raptor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shiphybridrangebonusrookie.py b/eos/effects/shiphybridrangebonusrookie.py deleted file mode 100644 index 417e8cc67..000000000 --- a/eos/effects/shiphybridrangebonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridRangeBonusRookie -# -# Used by: -# Ship: Ibis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("rookieSHTOptimalBonus")) diff --git a/eos/effects/shiphybridtracking1gd2.py b/eos/effects/shiphybridtracking1gd2.py deleted file mode 100644 index 029dfaa35..000000000 --- a/eos/effects/shiphybridtracking1gd2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridTracking1GD2 -# -# Used by: -# Variations of ship: Catalyst (2 of 2) -# Ship: Algos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGD2"), skill="Gallente Destroyer") diff --git a/eos/effects/shiphybridtrackingcd2.py b/eos/effects/shiphybridtrackingcd2.py deleted file mode 100644 index 20dc8ef34..000000000 --- a/eos/effects/shiphybridtrackingcd2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipHybridTrackingCD2 -# -# Used by: -# Ship: Cormorant -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusCD2"), skill="Caldari Destroyer") diff --git a/eos/effects/shiphybridtrackinggbc2.py b/eos/effects/shiphybridtrackinggbc2.py deleted file mode 100644 index ee9309f0a..000000000 --- a/eos/effects/shiphybridtrackinggbc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridTrackingGBC2 -# -# Used by: -# Ship: Brutix Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGBC2"), - skill="Gallente Battlecruiser") diff --git a/eos/effects/shiphybridtrackinggc.py b/eos/effects/shiphybridtrackinggc.py deleted file mode 100644 index e6708839e..000000000 --- a/eos/effects/shiphybridtrackinggc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridTrackingGC -# -# Used by: -# Ship: Lachesis -# Ship: Phobos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphybridtrackinggc2.py b/eos/effects/shiphybridtrackinggc2.py deleted file mode 100644 index 4169cca0d..000000000 --- a/eos/effects/shiphybridtrackinggc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridTrackingGC2 -# -# Used by: -# Ship: Enforcer -# Ship: Thorax -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shiphybridturretrofbonusgc2.py b/eos/effects/shiphybridturretrofbonusgc2.py deleted file mode 100644 index ab847b685..000000000 --- a/eos/effects/shiphybridturretrofbonusgc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipHybridTurretROFBonusGC2 -# -# Used by: -# Ship: Exequror Navy Issue -# Ship: Phobos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "speed", ship.getModifiedItemAttr("shipBonusGC2"), skill="Gallente Cruiser") diff --git a/eos/effects/shiplargehybridtrackingbonusgbc1.py b/eos/effects/shiplargehybridtrackingbonusgbc1.py deleted file mode 100644 index ed177a5c9..000000000 --- a/eos/effects/shiplargehybridtrackingbonusgbc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLargeHybridTrackingBonusGBC1 -# -# Used by: -# Ship: Talos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGBC1"), - skill="Gallente Battlecruiser") diff --git a/eos/effects/shiplargehybridturretrofgb.py b/eos/effects/shiplargehybridturretrofgb.py deleted file mode 100644 index 51045e22f..000000000 --- a/eos/effects/shiplargehybridturretrofgb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLargeHybridTurretRofGB -# -# Used by: -# Ship: Megathron -# Ship: Megathron Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), - "speed", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shiplargelasercapabc1.py b/eos/effects/shiplargelasercapabc1.py deleted file mode 100644 index facc0461d..000000000 --- a/eos/effects/shiplargelasercapabc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLargeLaserCapABC1 -# -# Used by: -# Ship: Oracle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplargelaserdamagebonusabc2.py b/eos/effects/shiplargelaserdamagebonusabc2.py deleted file mode 100644 index ced27165b..000000000 --- a/eos/effects/shiplargelaserdamagebonusabc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLargeLaserDamageBonusABC2 -# -# Used by: -# Ship: Oracle -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplargeweaponsdamagebonus.py b/eos/effects/shiplargeweaponsdamagebonus.py deleted file mode 100644 index a734806d8..000000000 --- a/eos/effects/shiplargeweaponsdamagebonus.py +++ /dev/null @@ -1,38 +0,0 @@ -# shipLargeWeaponsDamageBonus -# -# Used by: -# Ship: Praxis -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Hybrid Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), "damageMultiplier", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "emDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "emDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "kineticDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), "thermalDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "thermalDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "explosiveDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "kineticDamage", - src.getModifiedItemAttr("shipBonusRole7")) - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Cruise Missiles"), "emDamage", - src.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shiplasercap1abc2.py b/eos/effects/shiplasercap1abc2.py deleted file mode 100644 index 6517f6351..000000000 --- a/eos/effects/shiplasercap1abc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLaserCap1ABC2 -# -# Used by: -# Ship: Absolution -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC2"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplasercapabc1.py b/eos/effects/shiplasercapabc1.py deleted file mode 100644 index e733f3709..000000000 --- a/eos/effects/shiplasercapabc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLaserCapABC1 -# -# Used by: -# Ship: Harbinger -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusABC1"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplasercapneed2ad1.py b/eos/effects/shiplasercapneed2ad1.py deleted file mode 100644 index ae8265d4f..000000000 --- a/eos/effects/shiplasercapneed2ad1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipLaserCapNeed2AD1 -# -# Used by: -# Ship: Coercer -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shiplaserdamagebonusabc2.py b/eos/effects/shiplaserdamagebonusabc2.py deleted file mode 100644 index c750cbd31..000000000 --- a/eos/effects/shiplaserdamagebonusabc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLaserDamageBonusABC2 -# -# Used by: -# Ships named like: Harbinger (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusABC2"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shiplaserdamagepiratebattleship.py b/eos/effects/shiplaserdamagepiratebattleship.py deleted file mode 100644 index ff1e9558a..000000000 --- a/eos/effects/shiplaserdamagepiratebattleship.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLaserDamagePirateBattleship -# -# Used by: -# Ship: Bhaalgorn -# Ship: Nightmare -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shiplaserrofac2.py b/eos/effects/shiplaserrofac2.py deleted file mode 100644 index dbb11d779..000000000 --- a/eos/effects/shiplaserrofac2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipLaserRofAC2 -# -# Used by: -# Ship: Omen -# Ship: Zealot -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "speed", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shiplasertracking2ad2.py b/eos/effects/shiplasertracking2ad2.py deleted file mode 100644 index 03f58cb78..000000000 --- a/eos/effects/shiplasertracking2ad2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipLaserTracking2AD2 -# -# Used by: -# Ship: Coercer -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusAD2"), skill="Amarr Destroyer") diff --git a/eos/effects/shiplightmissilemaxvelocitybonusrookie.py b/eos/effects/shiplightmissilemaxvelocitybonusrookie.py deleted file mode 100644 index 9d3630a61..000000000 --- a/eos/effects/shiplightmissilemaxvelocitybonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipLightMissileMaxVelocityBonusRookie -# -# Used by: -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "maxVelocity", ship.getModifiedItemAttr("rookieLightMissileVelocity")) diff --git a/eos/effects/shipmaxlockedtargetsbonusaddonline.py b/eos/effects/shipmaxlockedtargetsbonusaddonline.py deleted file mode 100644 index f5ab7cb30..000000000 --- a/eos/effects/shipmaxlockedtargetsbonusaddonline.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMaxLockedTargetsBonusAddOnline -# -# Used by: -# Modules from group: Signal Amplifier (7 of 7) -# Structure Modules from group: Structure Signal Amplifier (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("maxLockedTargets", module.getModifiedItemAttr("maxLockedTargetsBonus")) diff --git a/eos/effects/shipmaxlockedtargetsbonusaddpassive.py b/eos/effects/shipmaxlockedtargetsbonusaddpassive.py deleted file mode 100644 index 52840f0b1..000000000 --- a/eos/effects/shipmaxlockedtargetsbonusaddpassive.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMaxLockedTargetsBonusAddPassive -# -# Used by: -# Subsystems named like: Core Dissolution Sequencer (2 of 2) -# Subsystems named like: Core Electronic Efficiency Gate (2 of 2) -# Subsystems named like: Offensive Support Processor (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.ship.increaseItemAttr("maxLockedTargets", src.getModifiedItemAttr("maxLockedTargetsBonus")) diff --git a/eos/effects/shipmaxtargetrangebonusonline.py b/eos/effects/shipmaxtargetrangebonusonline.py deleted file mode 100644 index fb6a1520a..000000000 --- a/eos/effects/shipmaxtargetrangebonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMaxTargetRangeBonusOnline -# -# Used by: -# Modules from group: Signal Amplifier (7 of 7) -# Structure Modules from group: Structure Signal Amplifier (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/shipmetcdamagebonusac.py b/eos/effects/shipmetcdamagebonusac.py deleted file mode 100644 index 8cdb47763..000000000 --- a/eos/effects/shipmetcdamagebonusac.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipMETCDamageBonusAC -# -# Used by: -# Ship: Augoror Navy Issue -# Ship: Enforcer -# Ship: Maller -# Ship: Omen Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shipmetdamagebonusac2.py b/eos/effects/shipmetdamagebonusac2.py deleted file mode 100644 index d8b44d2b8..000000000 --- a/eos/effects/shipmetdamagebonusac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMETDamageBonusAC2 -# -# Used by: -# Ship: Devoter -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipminingbonusorefrig1.py b/eos/effects/shipminingbonusorefrig1.py deleted file mode 100644 index ca0981dc7..000000000 --- a/eos/effects/shipminingbonusorefrig1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMiningBonusOREfrig1 -# -# Used by: -# Variations of ship: Venture (3 of 3) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Mining"), - "miningAmount", module.getModifiedItemAttr("shipBonusOREfrig1"), - skill="Mining Frigate") diff --git a/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py b/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py deleted file mode 100644 index b66bb9cac..000000000 --- a/eos/effects/shipmissileassaultmissilevelocitybonuscc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileAssaultMissileVelocityBonusCC2 -# -# Used by: -# Ship: Caracal -# Ship: Osprey Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissileemdamagecb.py b/eos/effects/shipmissileemdamagecb.py deleted file mode 100644 index 855ce53f4..000000000 --- a/eos/effects/shipmissileemdamagecb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileEMDamageCB -# -# Used by: -# Ship: Barghest -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "emDamage", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shipmissileemdamagecc.py b/eos/effects/shipmissileemdamagecc.py deleted file mode 100644 index 4fb493160..000000000 --- a/eos/effects/shipmissileemdamagecc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileEMDamageCC -# -# Used by: -# Ship: Orthrus -# Ship: Osprey Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "emDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissileemdamagecf2.py b/eos/effects/shipmissileemdamagecf2.py deleted file mode 100644 index 62e2e0fb3..000000000 --- a/eos/effects/shipmissileemdamagecf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileEMDamageCF2 -# -# Used by: -# Ship: Garmur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "emDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissileexpdamagecc.py b/eos/effects/shipmissileexpdamagecc.py deleted file mode 100644 index 4ba61cc88..000000000 --- a/eos/effects/shipmissileexpdamagecc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileExpDamageCC -# -# Used by: -# Ship: Orthrus -# Ship: Osprey Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissileexplodamagecb.py b/eos/effects/shipmissileexplodamagecb.py deleted file mode 100644 index 0d5a3a588..000000000 --- a/eos/effects/shipmissileexplodamagecb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileExploDamageCB -# -# Used by: -# Ship: Barghest -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipmissileexplosivedamagecf2.py b/eos/effects/shipmissileexplosivedamagecf2.py deleted file mode 100644 index ba61d0f47..000000000 --- a/eos/effects/shipmissileexplosivedamagecf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileExplosiveDamageCF2 -# -# Used by: -# Ship: Garmur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCF2"), - skill="Caldari Frigate") diff --git a/eos/effects/shipmissileheavyassaultvelocityabc2.py b/eos/effects/shipmissileheavyassaultvelocityabc2.py deleted file mode 100644 index a43ad0c44..000000000 --- a/eos/effects/shipmissileheavyassaultvelocityabc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileHeavyAssaultVelocityABC2 -# -# Used by: -# Ship: Damnation -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusABC2"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shipmissileheavyvelocityabc2.py b/eos/effects/shipmissileheavyvelocityabc2.py deleted file mode 100644 index a2cfa0bef..000000000 --- a/eos/effects/shipmissileheavyvelocityabc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileHeavyVelocityABC2 -# -# Used by: -# Ship: Damnation -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusABC2"), - skill="Amarr Battlecruiser") diff --git a/eos/effects/shipmissileheavyvelocitybonuscc2.py b/eos/effects/shipmissileheavyvelocitybonuscc2.py deleted file mode 100644 index aaf6de930..000000000 --- a/eos/effects/shipmissileheavyvelocitybonuscc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileHeavyVelocityBonusCC2 -# -# Used by: -# Ship: Caracal -# Ship: Osprey Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekindamagecb.py b/eos/effects/shipmissilekindamagecb.py deleted file mode 100644 index 32d10f8f5..000000000 --- a/eos/effects/shipmissilekindamagecb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileKinDamageCB -# -# Used by: -# Ship: Barghest -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipmissilekindamagecc2.py b/eos/effects/shipmissilekindamagecc2.py deleted file mode 100644 index 2a9b2ef96..000000000 --- a/eos/effects/shipmissilekindamagecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileKinDamageCC2 -# -# Used by: -# Ship: Rook -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekindamagecc3.py b/eos/effects/shipmissilekindamagecc3.py deleted file mode 100644 index e78580e80..000000000 --- a/eos/effects/shipmissilekindamagecc3.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileKinDamageCC3 -# -# Used by: -# Ship: Osprey Navy Issue - -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), "kineticDamage", - src.getModifiedItemAttr("shipBonusCC3"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekineticdamagecc.py b/eos/effects/shipmissilekineticdamagecc.py deleted file mode 100644 index e656053e6..000000000 --- a/eos/effects/shipmissilekineticdamagecc.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipMissileKineticDamageCC -# -# Used by: -# Ship: Cerberus -# Ship: Onyx -# Ship: Orthrus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilekineticdamagecf.py b/eos/effects/shipmissilekineticdamagecf.py deleted file mode 100644 index 3718e1666..000000000 --- a/eos/effects/shipmissilekineticdamagecf.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipMissileKineticDamageCF -# -# Used by: -# Ship: Buzzard -# Ship: Condor -# Ship: Hawk -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilekineticdamagecf2.py b/eos/effects/shipmissilekineticdamagecf2.py deleted file mode 100644 index c5a047761..000000000 --- a/eos/effects/shipmissilekineticdamagecf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileKineticDamageCF2 -# -# Used by: -# Ship: Garmur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilekineticdamagerookie.py b/eos/effects/shipmissilekineticdamagerookie.py deleted file mode 100644 index 4ab352344..000000000 --- a/eos/effects/shipmissilekineticdamagerookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileKineticDamageRookie -# -# Used by: -# Ship: Ibis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", ship.getModifiedItemAttr("rookieMissileKinDamageBonus")) diff --git a/eos/effects/shipmissilelauncherrofad1fixed.py b/eos/effects/shipmissilelauncherrofad1fixed.py deleted file mode 100644 index 37b8abfc7..000000000 --- a/eos/effects/shipmissilelauncherrofad1fixed.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileLauncherRoFAD1Fixed -# -# Used by: -# Ship: Heretic -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusAD1"), skill="Amarr Destroyer") diff --git a/eos/effects/shipmissilelauncherrofcc2.py b/eos/effects/shipmissilelauncherrofcc2.py deleted file mode 100644 index 1c1ce33d4..000000000 --- a/eos/effects/shipmissilelauncherrofcc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileLauncherRofCC2 -# -# Used by: -# Ship: Onyx -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilelauncherspeedbonusmc2.py b/eos/effects/shipmissilelauncherspeedbonusmc2.py deleted file mode 100644 index b070d3b2c..000000000 --- a/eos/effects/shipmissilelauncherspeedbonusmc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileLauncherSpeedBonusMC2 -# -# Used by: -# Ship: Bellicose -type = "passive" - - -def handler(fit, ship, context): - groups = ("Missile Launcher Rapid Light", "Missile Launcher Heavy", "Missile Launcher Heavy Assault") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipmissilelightvelocitybonuscc2.py b/eos/effects/shipmissilelightvelocitybonuscc2.py deleted file mode 100644 index 32a307ef8..000000000 --- a/eos/effects/shipmissilelightvelocitybonuscc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileLightVelocityBonusCC2 -# -# Used by: -# Ship: Caracal -# Ship: Osprey Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py b/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py deleted file mode 100644 index 7dbed2442..000000000 --- a/eos/effects/shipmissilereloadtimecaldaritacticaldestroyer2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileReloadTimeCaldariTacticalDestroyer2 -# -# Used by: -# Ship: Jackdaw -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "reloadTime", ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari2"), - skill="Caldari Tactical Destroyer") diff --git a/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py b/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py deleted file mode 100644 index f0d7c2926..000000000 --- a/eos/effects/shipmissilerofcaldaritacticaldestroyer1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileRoFCaldariTacticalDestroyer1 -# -# Used by: -# Ship: Jackdaw -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerCaldari1"), - skill="Caldari Tactical Destroyer") diff --git a/eos/effects/shipmissilerofcc.py b/eos/effects/shipmissilerofcc.py deleted file mode 100644 index bda638ace..000000000 --- a/eos/effects/shipmissilerofcc.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipMissileRofCC -# -# Used by: -# Ships named like: Caracal (2 of 2) -# Ship: Enforcer -type = "passive" - - -def handler(fit, ship, context): - groups = ("Missile Launcher Heavy", "Missile Launcher Rapid Light", "Missile Launcher Heavy Assault") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilerofmf2.py b/eos/effects/shipmissilerofmf2.py deleted file mode 100644 index 4661fbef0..000000000 --- a/eos/effects/shipmissilerofmf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileRoFMF2 -# -# Used by: -# Ship: Breacher -# Ship: Jaguar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipmissilespeedbonusaf.py b/eos/effects/shipmissilespeedbonusaf.py deleted file mode 100644 index b99ef42a4..000000000 --- a/eos/effects/shipmissilespeedbonusaf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileSpeedBonusAF -# -# Used by: -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "speed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shipmissilethermaldamagecf2.py b/eos/effects/shipmissilethermaldamagecf2.py deleted file mode 100644 index c61c29ee1..000000000 --- a/eos/effects/shipmissilethermaldamagecf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileThermalDamageCF2 -# -# Used by: -# Ship: Garmur -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilethermdamagecb.py b/eos/effects/shipmissilethermdamagecb.py deleted file mode 100644 index ccf2ec27e..000000000 --- a/eos/effects/shipmissilethermdamagecb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileThermDamageCB -# -# Used by: -# Ship: Barghest -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusCB"), - skill="Caldari Battleship") diff --git a/eos/effects/shipmissilethermdamagecc.py b/eos/effects/shipmissilethermdamagecc.py deleted file mode 100644 index 175af5266..000000000 --- a/eos/effects/shipmissilethermdamagecc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileThermDamageCC -# -# Used by: -# Ship: Orthrus -# Ship: Osprey Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipmissilevelocitycd1.py b/eos/effects/shipmissilevelocitycd1.py deleted file mode 100644 index 370f666b2..000000000 --- a/eos/effects/shipmissilevelocitycd1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMissileVelocityCD1 -# -# Used by: -# Ship: Flycatcher -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCD1"), skill="Caldari Destroyer") diff --git a/eos/effects/shipmissilevelocitycf.py b/eos/effects/shipmissilevelocitycf.py deleted file mode 100644 index 1e884505d..000000000 --- a/eos/effects/shipmissilevelocitycf.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipMissileVelocityCF -# -# Used by: -# Ship: Caldari Navy Hookbill -# Ship: Crow -# Ship: Kestrel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipmissilevelocitypiratefactionfrigate.py b/eos/effects/shipmissilevelocitypiratefactionfrigate.py deleted file mode 100644 index 16c3df09c..000000000 --- a/eos/effects/shipmissilevelocitypiratefactionfrigate.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipMissileVelocityPirateFactionFrigate -# -# Used by: -# Ship: Barghest -# Ship: Garmur -# Ship: Orthrus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipmissilevelocitypiratefactionlight.py b/eos/effects/shipmissilevelocitypiratefactionlight.py deleted file mode 100644 index 1cea02ec3..000000000 --- a/eos/effects/shipmissilevelocitypiratefactionlight.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileVelocityPirateFactionLight -# -# Used by: -# Ship: Corax -# Ship: Talwar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipmissilevelocitypiratefactionrocket.py b/eos/effects/shipmissilevelocitypiratefactionrocket.py deleted file mode 100644 index cc6e55c5d..000000000 --- a/eos/effects/shipmissilevelocitypiratefactionrocket.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipMissileVelocityPirateFactionRocket -# -# Used by: -# Ship: Corax -# Ship: Talwar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipmodemaxtargetrangepostdiv.py b/eos/effects/shipmodemaxtargetrangepostdiv.py deleted file mode 100644 index d6f46f428..000000000 --- a/eos/effects/shipmodemaxtargetrangepostdiv.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipModeMaxTargetRangePostDiv -# -# Used by: -# Modules named like: Sharpshooter Mode (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr( - "maxTargetRange", - 1 / module.getModifiedItemAttr("modeMaxTargetRangePostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/shipmodemissilevelocitypostdiv.py b/eos/effects/shipmodemissilevelocitypostdiv.py deleted file mode 100644 index 994a5bf74..000000000 --- a/eos/effects/shipmodemissilevelocitypostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeMissileVelocityPostDiv -# -# Used by: -# Module: Jackdaw Sharpshooter Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredChargeMultiply( - lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", - 1 / module.getModifiedItemAttr("modeMaxRangePostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/shipmodescanstrengthpostdiv.py b/eos/effects/shipmodescanstrengthpostdiv.py deleted file mode 100644 index 544eac1b2..000000000 --- a/eos/effects/shipmodescanstrengthpostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeScanStrengthPostDiv -# -# Used by: -# Modules named like: Sharpshooter Mode (4 of 4) -type = "passive" - - -def handler(fit, module, context): - for scanType in ("Gravimetric", "Magnetometric", "Radar", "Ladar"): - fit.ship.multiplyItemAttr( - "scan{}Strength".format(scanType), - 1 / (module.getModifiedItemAttr("mode{}StrengthPostDiv".format(scanType)) or 1), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/shipmodesetdamagepostdiv.py b/eos/effects/shipmodesetdamagepostdiv.py deleted file mode 100644 index 83c827795..000000000 --- a/eos/effects/shipmodesetdamagepostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSETDamagePostDiv -# -# Used by: -# Module: Confessor Sharpshooter Mode -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/shipmodesetoptimalrangepostdiv.py b/eos/effects/shipmodesetoptimalrangepostdiv.py deleted file mode 100644 index 4279bc167..000000000 --- a/eos/effects/shipmodesetoptimalrangepostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSETOptimalRangePostDiv -# -# Used by: -# Module: Confessor Sharpshooter Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", - 1 / module.getModifiedItemAttr("modeMaxRangePostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/shipmodeshtdamagepostdiv.py b/eos/effects/shipmodeshtdamagepostdiv.py deleted file mode 100644 index 8ce7e5d6d..000000000 --- a/eos/effects/shipmodeshtdamagepostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSHTDamagePostDiv -# -# Used by: -# Module: Hecate Sharpshooter Mode -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/shipmodeshtoptimalrangepostdiv.py b/eos/effects/shipmodeshtoptimalrangepostdiv.py deleted file mode 100644 index 724cad5de..000000000 --- a/eos/effects/shipmodeshtoptimalrangepostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSHTOptimalRangePostDiv -# -# Used by: -# Module: Hecate Sharpshooter Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", - 1 / module.getModifiedItemAttr("modeMaxRangePostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/shipmodesmallmissiledamagepostdiv.py b/eos/effects/shipmodesmallmissiledamagepostdiv.py deleted file mode 100644 index 31df33c3a..000000000 --- a/eos/effects/shipmodesmallmissiledamagepostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSmallMissileDamagePostDiv -# -# Used by: -# Module: Jackdaw Sharpshooter Mode -type = "passive" - - -def handler(fit, module, context): - types = ("thermal", "em", "explosive", "kinetic") - for type in types: - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "{}Damage".format(type), - 1 / module.getModifiedItemAttr("modeDamageBonusPostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv") diff --git a/eos/effects/shipmodesptdamagepostdiv.py b/eos/effects/shipmodesptdamagepostdiv.py deleted file mode 100644 index 788237c03..000000000 --- a/eos/effects/shipmodesptdamagepostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSPTDamagePostDiv -# -# Used by: -# Module: Svipul Sharpshooter Mode -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" - ) diff --git a/eos/effects/shipmodespttrackingpostdiv.py b/eos/effects/shipmodespttrackingpostdiv.py deleted file mode 100644 index 6e3563316..000000000 --- a/eos/effects/shipmodespttrackingpostdiv.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModeSPTTrackingPostDiv -# -# Used by: -# Module: Svipul Sharpshooter Mode -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply( - lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "trackingSpeed", - 1 / module.getModifiedItemAttr("modeTrackingPostDiv"), - stackingPenalties=True, - penaltyGroup="postDiv" - ) diff --git a/eos/effects/shipmoduleancillaryremotearmorrepairer.py b/eos/effects/shipmoduleancillaryremotearmorrepairer.py deleted file mode 100644 index a1697eec7..000000000 --- a/eos/effects/shipmoduleancillaryremotearmorrepairer.py +++ /dev/null @@ -1,24 +0,0 @@ -# shipModuleAncillaryRemoteArmorRepairer -# -# Used by: -# Modules from group: Ancillary Remote Armor Repairer (4 of 4) - -type = "projected", "active" -runTime = "late" - - -def handler(fit, module, context, **kwargs): - if "projected" not in context: - return - - if module.charge and module.charge.name == "Nanite Repair Paste": - multiplier = 3 - else: - multiplier = 1 - - amount = module.getModifiedItemAttr("armorDamageAmount") * multiplier - speed = module.getModifiedItemAttr("duration") / 1000.0 - rps = amount / speed - fit.extraAttributes.increase("armorRepair", rps) - fit.extraAttributes.increase("armorRepairPreSpool", rps) - fit.extraAttributes.increase("armorRepairFullSpool", rps) diff --git a/eos/effects/shipmoduleancillaryremoteshieldbooster.py b/eos/effects/shipmoduleancillaryremoteshieldbooster.py deleted file mode 100644 index dc135bc0a..000000000 --- a/eos/effects/shipmoduleancillaryremoteshieldbooster.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModuleAncillaryRemoteShieldBooster -# -# Used by: -# Modules from group: Ancillary Remote Shield Booster (4 of 4) - -type = "projected", "active" -runTime = "late" - - -def handler(fit, module, context, **kwargs): - if "projected" not in context: - return - amount = module.getModifiedItemAttr("shieldBonus") - speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", amount / speed, **kwargs) diff --git a/eos/effects/shipmoduleguidancedisruptor.py b/eos/effects/shipmoduleguidancedisruptor.py deleted file mode 100644 index a48eb6e78..000000000 --- a/eos/effects/shipmoduleguidancedisruptor.py +++ /dev/null @@ -1,18 +0,0 @@ -# shipModuleGuidanceDisruptor -# -# Used by: -# Variations of module: Guidance Disruptor I (6 of 6) -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - 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, module.getModifiedItemAttr(srcAttr), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/shipmoduleremotearmormutadaptiverepairer.py b/eos/effects/shipmoduleremotearmormutadaptiverepairer.py deleted file mode 100644 index 94a53be2b..000000000 --- a/eos/effects/shipmoduleremotearmormutadaptiverepairer.py +++ /dev/null @@ -1,28 +0,0 @@ -# ShipModuleRemoteArmorMutadaptiveRepairer -# -# Used by: -# Modules from group: Mutadaptive Remote Armor Repairer (5 of 5) - - -import eos.config -from eos.utils.spoolSupport import SpoolType, SpoolOptions, calculateSpoolup, resolveSpoolOptions - - -type = "projected", "active" -runTime = "late" - - -def handler(fit, container, context, **kwargs): - if "projected" in context: - repAmountBase = container.getModifiedItemAttr("armorDamageAmount") - cycleTime = container.getModifiedItemAttr("duration") / 1000.0 - repSpoolMax = container.getModifiedItemAttr("repairMultiplierBonusMax") - repSpoolPerCycle = container.getModifiedItemAttr("repairMultiplierBonusPerCycle") - defaultSpoolValue = eos.config.settings['globalDefaultSpoolupPercentage'] - spoolType, spoolAmount = resolveSpoolOptions(SpoolOptions(SpoolType.SCALE, defaultSpoolValue, False), container) - rps = repAmountBase * (1 + calculateSpoolup(repSpoolMax, repSpoolPerCycle, cycleTime, spoolType, spoolAmount)[0]) / cycleTime - rpsPreSpool = repAmountBase * (1 + calculateSpoolup(repSpoolMax, repSpoolPerCycle, cycleTime, SpoolType.SCALE, 0)[0]) / cycleTime - rpsFullSpool = repAmountBase * (1 + calculateSpoolup(repSpoolMax, repSpoolPerCycle, cycleTime, SpoolType.SCALE, 1)[0]) / cycleTime - fit.extraAttributes.increase("armorRepair", rps, **kwargs) - fit.extraAttributes.increase("armorRepairPreSpool", rpsPreSpool, **kwargs) - fit.extraAttributes.increase("armorRepairFullSpool", rpsFullSpool, **kwargs) diff --git a/eos/effects/shipmoduleremotearmorrepairer.py b/eos/effects/shipmoduleremotearmorrepairer.py deleted file mode 100644 index 220792812..000000000 --- a/eos/effects/shipmoduleremotearmorrepairer.py +++ /dev/null @@ -1,17 +0,0 @@ -# shipModuleRemoteArmorRepairer -# -# Used by: -# Modules from group: Remote Armor Repairer (39 of 39) - -type = "projected", "active" -runTime = "late" - - -def handler(fit, container, context, **kwargs): - if "projected" in context: - bonus = container.getModifiedItemAttr("armorDamageAmount") - duration = container.getModifiedItemAttr("duration") / 1000.0 - rps = bonus / duration - fit.extraAttributes.increase("armorRepair", rps) - fit.extraAttributes.increase("armorRepairPreSpool", rps) - fit.extraAttributes.increase("armorRepairFullSpool", rps) diff --git a/eos/effects/shipmoduleremotecapacitortransmitter.py b/eos/effects/shipmoduleremotecapacitortransmitter.py deleted file mode 100644 index 6b414da7e..000000000 --- a/eos/effects/shipmoduleremotecapacitortransmitter.py +++ /dev/null @@ -1,22 +0,0 @@ -# shipModuleRemoteCapacitorTransmitter -# -# Used by: -# Modules from group: Remote Capacitor Transmitter (41 of 41) - - -from eos.modifiedAttributeDict import ModifiedAttributeDict - - -type = "projected", "active" -runTime = "late" - - -def handler(fit, src, context, **kwargs): - if "projected" in context: - amount = src.getModifiedItemAttr("powerTransferAmount") - duration = src.getModifiedItemAttr("duration") - - if 'effect' in kwargs: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - fit.addDrain(src, duration, -amount, 0) diff --git a/eos/effects/shipmoduleremotehullrepairer.py b/eos/effects/shipmoduleremotehullrepairer.py deleted file mode 100644 index 94839fdff..000000000 --- a/eos/effects/shipmoduleremotehullrepairer.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipModuleRemoteHullRepairer -# -# Used by: -# Modules from group: Remote Hull Repairer (8 of 8) - -type = "projected", "active" -runTime = "late" - - -def handler(fit, module, context): - if "projected" not in context: - return - bonus = module.getModifiedItemAttr("structureDamageAmount") - duration = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("hullRepair", bonus / duration) diff --git a/eos/effects/shipmoduleremoteshieldbooster.py b/eos/effects/shipmoduleremoteshieldbooster.py deleted file mode 100644 index 7c62a32c4..000000000 --- a/eos/effects/shipmoduleremoteshieldbooster.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipModuleRemoteShieldBooster -# -# Used by: -# Modules from group: Remote Shield Booster (38 of 38) -type = "projected", "active" - - -def handler(fit, container, context, **kwargs): - if "projected" in context: - bonus = container.getModifiedItemAttr("shieldBonus") - duration = container.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("shieldRepair", bonus / duration, **kwargs) diff --git a/eos/effects/shipmoduleremotetrackingcomputer.py b/eos/effects/shipmoduleremotetrackingcomputer.py deleted file mode 100644 index 698307183..000000000 --- a/eos/effects/shipmoduleremotetrackingcomputer.py +++ /dev/null @@ -1,18 +0,0 @@ -# shipModuleRemoteTrackingComputer -# -# Used by: -# Modules from group: Remote Tracking Computer (8 of 8) -type = "projected", "active" - - -def handler(fit, module, context, **kwargs): - if "projected" in context: - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True, **kwargs) diff --git a/eos/effects/shipmoduletrackingdisruptor.py b/eos/effects/shipmoduletrackingdisruptor.py deleted file mode 100644 index 2c04a4a6e..000000000 --- a/eos/effects/shipmoduletrackingdisruptor.py +++ /dev/null @@ -1,18 +0,0 @@ -# shipModuleTrackingDisruptor -# -# Used by: -# Variations of module: Tracking Disruptor I (6 of 6) -type = "projected", "active" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" in context: - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/shipmtfalloffbonusatc.py b/eos/effects/shipmtfalloffbonusatc.py deleted file mode 100644 index 199209b3a..000000000 --- a/eos/effects/shipmtfalloffbonusatc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMTFalloffBonusATC -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipmtfalloffbonusatf.py b/eos/effects/shipmtfalloffbonusatf.py deleted file mode 100644 index 737efa570..000000000 --- a/eos/effects/shipmtfalloffbonusatf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMTFalloffBonusATF -# -# Used by: -# Ship: Freki -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipmtmaxrangebonusatc.py b/eos/effects/shipmtmaxrangebonusatc.py deleted file mode 100644 index 0cc9e309a..000000000 --- a/eos/effects/shipmtmaxrangebonusatc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMTMaxRangeBonusATC -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusATC2")) diff --git a/eos/effects/shipmtmaxrangebonusatf.py b/eos/effects/shipmtmaxrangebonusatf.py deleted file mode 100644 index e59725ea0..000000000 --- a/eos/effects/shipmtmaxrangebonusatf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipMTMaxRangeBonusATF -# -# Used by: -# Ship: Freki -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusATF2")) diff --git a/eos/effects/shipneutdestabilizationamountbonusrookie.py b/eos/effects/shipneutdestabilizationamountbonusrookie.py deleted file mode 100644 index 3a98a9e7c..000000000 --- a/eos/effects/shipneutdestabilizationamountbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipNeutDestabilizationAmountBonusRookie -# -# Used by: -# Ship: Hematos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", ship.getModifiedItemAttr("rookieNeutDrain")) diff --git a/eos/effects/shipnostransferamountbonusrookie.py b/eos/effects/shipnostransferamountbonusrookie.py deleted file mode 100644 index fbbe40fc0..000000000 --- a/eos/effects/shipnostransferamountbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipNOSTransferAmountBonusRookie -# -# Used by: -# Ship: Hematos -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", ship.getModifiedItemAttr("rookieNosDrain")) diff --git a/eos/effects/shippcbsdmgbonuspcbs2.py b/eos/effects/shippcbsdmgbonuspcbs2.py deleted file mode 100644 index 3f35b237c..000000000 --- a/eos/effects/shippcbsdmgbonuspcbs2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipPCBSDmgBonusPCBS2 -# -# Used by: -# Ship: Leshak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Precursor Weapon"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusPBS2"), skill="Precursor Battleship") diff --git a/eos/effects/shippcbsspeedbonuspcbs1.py b/eos/effects/shippcbsspeedbonuspcbs1.py deleted file mode 100644 index 9a35e373c..000000000 --- a/eos/effects/shippcbsspeedbonuspcbs1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipPCBSSPeedBonusPCBS1 -# -# Used by: -# Ship: Leshak -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Precursor Weapon"), - "speed", ship.getModifiedItemAttr("shipBonusPBS1"), skill="Precursor Battleship") diff --git a/eos/effects/shippdmgbonusmf.py b/eos/effects/shippdmgbonusmf.py deleted file mode 100644 index c7ad6a186..000000000 --- a/eos/effects/shippdmgbonusmf.py +++ /dev/null @@ -1,16 +0,0 @@ -# shipPDmgBonusMF -# -# Used by: -# Ship: Cheetah -# Ship: Freki -# Ship: Republic Fleet Firetail -# Ship: Rifter -# Ship: Slasher -# Ship: Stiletto -# Ship: Wolf -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipprojectiledamagemd1.py b/eos/effects/shipprojectiledamagemd1.py deleted file mode 100644 index 171332da4..000000000 --- a/eos/effects/shipprojectiledamagemd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipProjectileDamageMD1 -# -# Used by: -# Variations of ship: Thrasher (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMD1"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shipprojectiledmgmc.py b/eos/effects/shipprojectiledmgmc.py deleted file mode 100644 index 4a236b998..000000000 --- a/eos/effects/shipprojectiledmgmc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileDmgMC -# -# Used by: -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipprojectiledmgmc2.py b/eos/effects/shipprojectiledmgmc2.py deleted file mode 100644 index c313f8e7e..000000000 --- a/eos/effects/shipprojectiledmgmc2.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipProjectileDmgMC2 -# -# Used by: -# Variations of ship: Rupture (3 of 3) -# Ship: Cynabal -# Ship: Moracha -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMC2"), - skill="Minmatar Cruiser") diff --git a/eos/effects/shipprojectiledmgpiratecruiser.py b/eos/effects/shipprojectiledmgpiratecruiser.py deleted file mode 100644 index f8c60bd63..000000000 --- a/eos/effects/shipprojectiledmgpiratecruiser.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileDmgPirateCruiser -# -# Used by: -# Ship: Gnosis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipprojectilefalloffbonusmbc2.py b/eos/effects/shipprojectilefalloffbonusmbc2.py deleted file mode 100644 index cd9fc15ae..000000000 --- a/eos/effects/shipprojectilefalloffbonusmbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileFalloffBonusMBC2 -# -# Used by: -# Ship: Tornado -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipprojectileoptimalbonusemf2.py b/eos/effects/shipprojectileoptimalbonusemf2.py deleted file mode 100644 index d4245be72..000000000 --- a/eos/effects/shipprojectileoptimalbonusemf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileOptimalBonuseMF2 -# -# Used by: -# Ship: Cheetah -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipprojectilerof1mbc2.py b/eos/effects/shipprojectilerof1mbc2.py deleted file mode 100644 index da832307f..000000000 --- a/eos/effects/shipprojectilerof1mbc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileRof1MBC2 -# -# Used by: -# Ship: Hurricane -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "speed", ship.getModifiedItemAttr("shipBonusMBC2"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipprojectilerofbonusmbc1.py b/eos/effects/shipprojectilerofbonusmbc1.py deleted file mode 100644 index 6df3698af..000000000 --- a/eos/effects/shipprojectilerofbonusmbc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileRofBonusMBC1 -# -# Used by: -# Ship: Tornado -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "speed", ship.getModifiedItemAttr("shipBonusMBC1"), skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipprojectilerofmf.py b/eos/effects/shipprojectilerofmf.py deleted file mode 100644 index d4eb0ef4a..000000000 --- a/eos/effects/shipprojectilerofmf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileRofMF -# -# Used by: -# Ship: Claw -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), "speed", - src.getModifiedItemAttr("shipBonusMF"), stackingPenalties=True, skill="Minmatar Frigate") diff --git a/eos/effects/shipprojectilerofpiratebattleship.py b/eos/effects/shipprojectilerofpiratebattleship.py deleted file mode 100644 index 9b0a7168f..000000000 --- a/eos/effects/shipprojectilerofpiratebattleship.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileRofPirateBattleship -# -# Used by: -# Ship: Machariel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "speed", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipprojectilerofpiratecruiser.py b/eos/effects/shipprojectilerofpiratecruiser.py deleted file mode 100644 index 25a500674..000000000 --- a/eos/effects/shipprojectilerofpiratecruiser.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipProjectileRofPirateCruiser -# -# Used by: -# Ship: Cynabal -# Ship: Moracha -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "speed", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipprojectiletracking1md2.py b/eos/effects/shipprojectiletracking1md2.py deleted file mode 100644 index a2b7e2371..000000000 --- a/eos/effects/shipprojectiletracking1md2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipProjectileTracking1MD2 -# -# Used by: -# Variations of ship: Thrasher (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusMD2"), skill="Minmatar Destroyer") diff --git a/eos/effects/shipprojectiletrackinggf.py b/eos/effects/shipprojectiletrackinggf.py deleted file mode 100644 index f4f73849f..000000000 --- a/eos/effects/shipprojectiletrackinggf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipProjectileTrackingGF -# -# Used by: -# Ship: Chremoas -# Ship: Dramiel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipprojectiletrackingmf2.py b/eos/effects/shipprojectiletrackingmf2.py deleted file mode 100644 index 588b6c7ff..000000000 --- a/eos/effects/shipprojectiletrackingmf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipProjectileTrackingMF2 -# -# Used by: -# Variations of ship: Slasher (3 of 3) -# Ship: Republic Fleet Firetail -# Ship: Wolf -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shipptdmgbonusmb.py b/eos/effects/shipptdmgbonusmb.py deleted file mode 100644 index f6809435e..000000000 --- a/eos/effects/shipptdmgbonusmb.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipPTDmgBonusMB -# -# Used by: -# Variations of ship: Tempest (3 of 4) -# Ship: Machariel -# Ship: Panther -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusMB"), - skill="Minmatar Battleship") diff --git a/eos/effects/shipptspeedbonusmb2.py b/eos/effects/shipptspeedbonusmb2.py deleted file mode 100644 index 7c138ffe0..000000000 --- a/eos/effects/shipptspeedbonusmb2.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipPTspeedBonusMB2 -# -# Used by: -# Variations of ship: Tempest (4 of 4) -# Ship: Maelstrom -# Ship: Marshal -# Ship: Panther -# Ship: Typhoon Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "speed", ship.getModifiedItemAttr("shipBonusMB2"), skill="Minmatar Battleship") diff --git a/eos/effects/shippturretfalloffbonusgb.py b/eos/effects/shippturretfalloffbonusgb.py deleted file mode 100644 index 18a7dfc80..000000000 --- a/eos/effects/shippturretfalloffbonusgb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipPTurretFalloffBonusGB -# -# Used by: -# Ship: Machariel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusGB"), skill="Gallente Battleship") diff --git a/eos/effects/shippturretfalloffbonusgc.py b/eos/effects/shippturretfalloffbonusgc.py deleted file mode 100644 index ba5f3f80d..000000000 --- a/eos/effects/shippturretfalloffbonusgc.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipPTurretFalloffBonusGC -# -# Used by: -# Ship: Cynabal -# Ship: Moracha -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shippturretfalloffbonusmc2.py b/eos/effects/shippturretfalloffbonusmc2.py deleted file mode 100644 index 85f4a70f8..000000000 --- a/eos/effects/shippturretfalloffbonusmc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipPTurretFalloffBonusMC2 -# -# Used by: -# Ship: Enforcer -# Ship: Stabber -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shippturretspeedbonusmc.py b/eos/effects/shippturretspeedbonusmc.py deleted file mode 100644 index 1f360a87a..000000000 --- a/eos/effects/shippturretspeedbonusmc.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipPTurretSpeedBonusMC -# -# Used by: -# Variations of ship: Rupture (3 of 3) -# Variations of ship: Stabber (3 of 3) -# Ship: Enforcer -# Ship: Huginn -# Ship: Scythe Fleet Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "speed", ship.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipremotearmorfalloffac2.py b/eos/effects/shipremotearmorfalloffac2.py deleted file mode 100644 index 8b86803ea..000000000 --- a/eos/effects/shipremotearmorfalloffac2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRemoteArmorFalloffAC2 -# -# Used by: -# Ship: Guardian -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "falloffEffectiveness", src.getModifiedItemAttr("shipBonusAC2"), - skill="Amarr Cruiser") diff --git a/eos/effects/shipremotearmorfalloffgc1.py b/eos/effects/shipremotearmorfalloffgc1.py deleted file mode 100644 index 956f3158e..000000000 --- a/eos/effects/shipremotearmorfalloffgc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRemoteArmorFalloffGC1 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "falloffEffectiveness", src.getModifiedItemAttr("shipBonusGC"), - skill="Gallente Cruiser") diff --git a/eos/effects/shipremotearmorrangeac2.py b/eos/effects/shipremotearmorrangeac2.py deleted file mode 100644 index 05e10ee65..000000000 --- a/eos/effects/shipremotearmorrangeac2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipRemoteArmorRangeAC2 -# -# Used by: -# Ship: Guardian -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", - src.getModifiedItemAttr("shipBonusAC2"), skill="Amarr Cruiser") diff --git a/eos/effects/shipremotearmorrangegc1.py b/eos/effects/shipremotearmorrangegc1.py deleted file mode 100644 index 737631924..000000000 --- a/eos/effects/shipremotearmorrangegc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipRemoteArmorRangeGC1 -# -# Used by: -# Ship: Oneiros -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "maxRange", - src.getModifiedItemAttr("shipBonusGC"), skill="Gallente Cruiser") diff --git a/eos/effects/shipremotesensordampenercapneedgf.py b/eos/effects/shipremotesensordampenercapneedgf.py deleted file mode 100644 index ac0d80650..000000000 --- a/eos/effects/shipremotesensordampenercapneedgf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRemoteSensorDampenerCapNeedGF -# -# Used by: -# Ship: Keres -# Ship: Maulus -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Sensor Dampener", - "capacitorNeed", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shiprocketemdmgaf.py b/eos/effects/shiprocketemdmgaf.py deleted file mode 100644 index 440ae90cb..000000000 --- a/eos/effects/shiprocketemdmgaf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRocketEmDmgAF -# -# Used by: -# Ship: Anathema -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "emDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketemthermkindmgmf2.py b/eos/effects/shiprocketemthermkindmgmf2.py deleted file mode 100644 index 0508f7f78..000000000 --- a/eos/effects/shiprocketemthermkindmgmf2.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipRocketEMThermKinDmgMF2 -# -# Used by: -# Ship: Vigil Fleet Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "emDamage", - src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "thermalDamage", - src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "kineticDamage", - src.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shiprocketexpdmgmf3.py b/eos/effects/shiprocketexpdmgmf3.py deleted file mode 100644 index 022036560..000000000 --- a/eos/effects/shiprocketexpdmgmf3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipRocketExpDmgMF3 -# -# Used by: -# Ship: Vigil Fleet Issue -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), "explosiveDamage", - src.getModifiedItemAttr("shipBonus3MF"), skill="Minmatar Frigate") diff --git a/eos/effects/shiprocketexplosivedmgaf.py b/eos/effects/shiprocketexplosivedmgaf.py deleted file mode 100644 index 4ff2ef7f2..000000000 --- a/eos/effects/shiprocketexplosivedmgaf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRocketExplosiveDmgAF -# -# Used by: -# Ship: Anathema -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketexplosivedmgmd1.py b/eos/effects/shiprocketexplosivedmgmd1.py deleted file mode 100644 index 73c57b8aa..000000000 --- a/eos/effects/shiprocketexplosivedmgmd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRocketExplosiveDmgMD1 -# -# Used by: -# Ship: Talwar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusMD1"), - skill="Minmatar Destroyer") diff --git a/eos/effects/shiprocketkineticdmgaf.py b/eos/effects/shiprocketkineticdmgaf.py deleted file mode 100644 index f3b178535..000000000 --- a/eos/effects/shiprocketkineticdmgaf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRocketKineticDmgAF -# -# Used by: -# Ship: Anathema -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketkineticdmgcd1.py b/eos/effects/shiprocketkineticdmgcd1.py deleted file mode 100644 index 79de18da3..000000000 --- a/eos/effects/shiprocketkineticdmgcd1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRocketKineticDmgCD1 -# -# Used by: -# Ship: Corax -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCD1"), - skill="Caldari Destroyer") diff --git a/eos/effects/shiprocketmaxvelocitybonusrookie.py b/eos/effects/shiprocketmaxvelocitybonusrookie.py deleted file mode 100644 index 998eb54e8..000000000 --- a/eos/effects/shiprocketmaxvelocitybonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipRocketMaxVelocityBonusRookie -# -# Used by: -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "maxVelocity", ship.getModifiedItemAttr("rookieRocketVelocity")) diff --git a/eos/effects/shiprocketrofbonusaf2.py b/eos/effects/shiprocketrofbonusaf2.py deleted file mode 100644 index d272d6ec7..000000000 --- a/eos/effects/shiprocketrofbonusaf2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipRocketRoFBonusAF2 -# -# Used by: -# Ship: Malediction -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Rocket", - "speed", ship.getModifiedItemAttr("shipBonus2AF"), skill="Amarr Frigate") diff --git a/eos/effects/shiprocketthermaldmgaf.py b/eos/effects/shiprocketthermaldmgaf.py deleted file mode 100644 index b937c6760..000000000 --- a/eos/effects/shiprocketthermaldmgaf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipRocketThermalDmgAF -# -# Used by: -# Ship: Anathema -# Ship: Vengeance -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Rockets"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shiproledisintegratormaxrangecbc.py b/eos/effects/shiproledisintegratormaxrangecbc.py deleted file mode 100644 index 193bcd298..000000000 --- a/eos/effects/shiproledisintegratormaxrangecbc.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipRoleDisintegratorMaxRangeCBC -# -# Used by: -# Ship: Drekavac -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Precursor Weapon"), - "maxRange", ship.getModifiedItemAttr("roleBonusCBC")) diff --git a/eos/effects/shipscanprobestrengthbonuspiratecruiser.py b/eos/effects/shipscanprobestrengthbonuspiratecruiser.py deleted file mode 100644 index c57d3adff..000000000 --- a/eos/effects/shipscanprobestrengthbonuspiratecruiser.py +++ /dev/null @@ -1,14 +0,0 @@ -# shipScanProbeStrengthBonusPirateCruiser -# -# Used by: -# Ships named like: Stratios (2 of 2) -# Ship: Astero -# Ship: Gnosis -# Ship: Praxis -# Ship: Sunesis -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseSensorStrength", container.getModifiedItemAttr("shipBonusRole8")) diff --git a/eos/effects/shipscanprobestrengthbonuspiratefaction.py b/eos/effects/shipscanprobestrengthbonuspiratefaction.py deleted file mode 100644 index 26ccc7c2c..000000000 --- a/eos/effects/shipscanprobestrengthbonuspiratefaction.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipScanProbeStrengthBonusPirateFaction -# -# Used by: -# Ship: Nestor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseSensorStrength", ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipscanresolutionbonusonline.py b/eos/effects/shipscanresolutionbonusonline.py deleted file mode 100644 index 989f097a8..000000000 --- a/eos/effects/shipscanresolutionbonusonline.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipScanResolutionBonusOnline -# -# Used by: -# Modules from group: Signal Amplifier (7 of 7) -# Structure Modules from group: Structure Signal Amplifier (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True) diff --git a/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py b/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py deleted file mode 100644 index 3cf50a439..000000000 --- a/eos/effects/shipsetcapneedamarrtacticaldestroyer2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSETCapNeedAmarrTacticalDestroyer2 -# -# Used by: -# Ship: Confessor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr2"), - skill="Amarr Tactical Destroyer") diff --git a/eos/effects/shipsetdamageamarrtacticaldestroyer1.py b/eos/effects/shipsetdamageamarrtacticaldestroyer1.py deleted file mode 100644 index ce45c042a..000000000 --- a/eos/effects/shipsetdamageamarrtacticaldestroyer1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSETDamageAmarrTacticalDestroyer1 -# -# Used by: -# Ship: Confessor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusTacticalDestroyerAmarr1"), - skill="Amarr Tactical Destroyer") diff --git a/eos/effects/shipsetdmgbonusaf.py b/eos/effects/shipsetdmgbonusaf.py deleted file mode 100644 index 5ecc4f4a2..000000000 --- a/eos/effects/shipsetdmgbonusaf.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipSETDmgBonusAF -# -# Used by: -# Ship: Executioner -# Ship: Gold Magnate -# Ship: Silver Magnate -# Ship: Tormentor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusAF"), skill="Amarr Frigate") diff --git a/eos/effects/shipsetdmgbonusrookie.py b/eos/effects/shipsetdmgbonusrookie.py deleted file mode 100644 index d32fd04e7..000000000 --- a/eos/effects/shipsetdmgbonusrookie.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipSETDmgBonusRookie -# -# Used by: -# Ship: Hematos -# Ship: Immolator -# Ship: Impairor -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", ship.getModifiedItemAttr("rookieSETDamageBonus")) diff --git a/eos/effects/shipsetoptimalbonusrookie.py b/eos/effects/shipsetoptimalbonusrookie.py deleted file mode 100644 index 771ffbc65..000000000 --- a/eos/effects/shipsetoptimalbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSETOptimalBonusRookie -# -# Used by: -# Ship: Immolator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("rookieSETOptimal")) diff --git a/eos/effects/shipsetrofaf.py b/eos/effects/shipsetrofaf.py deleted file mode 100644 index df4394b19..000000000 --- a/eos/effects/shipsetrofaf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSETROFAF -# -# Used by: -# Ship: Retribution -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), "speed", - src.getModifiedItemAttr("shipBonusAF"), stackingPenalties=False, skill="Amarr Frigate") diff --git a/eos/effects/shipsettrackingbonusrookie.py b/eos/effects/shipsettrackingbonusrookie.py deleted file mode 100644 index c901d1374..000000000 --- a/eos/effects/shipsettrackingbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSETTrackingBonusRookie -# -# Used by: -# Ship: Immolator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("rookieSETTracking")) diff --git a/eos/effects/shipshieldboost1mbc1.py b/eos/effects/shipshieldboost1mbc1.py deleted file mode 100644 index 5f9abe465..000000000 --- a/eos/effects/shipshieldboost1mbc1.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldBoost1MBC1 -# -# Used by: -# Variations of ship: Cyclone (2 of 2) -# Ship: Sleipnir -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMBC1"), - skill="Minmatar Battlecruiser") diff --git a/eos/effects/shipshieldboostmf.py b/eos/effects/shipshieldboostmf.py deleted file mode 100644 index ced5d2799..000000000 --- a/eos/effects/shipshieldboostmf.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldBoostMF -# -# Used by: -# Ship: Breacher -# Ship: Jaguar -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipshieldboostrookie.py b/eos/effects/shipshieldboostrookie.py deleted file mode 100644 index 55cf58a78..000000000 --- a/eos/effects/shipshieldboostrookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldBoostRookie -# -# Used by: -# Ship: Immolator -# Ship: Reaper -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", ship.getModifiedItemAttr("rookieShieldBoostBonus")) diff --git a/eos/effects/shipshieldemresistance1cbc2.py b/eos/effects/shipshieldemresistance1cbc2.py deleted file mode 100644 index 82fe621bc..000000000 --- a/eos/effects/shipshieldemresistance1cbc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldEmResistance1CBC2 -# -# Used by: -# Ship: Drake -# Ship: Nighthawk -# Ship: Vulture -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldemresistancecc2.py b/eos/effects/shipshieldemresistancecc2.py deleted file mode 100644 index 20a8e86a3..000000000 --- a/eos/effects/shipshieldemresistancecc2.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipShieldEMResistanceCC2 -# -# Used by: -# Variations of ship: Moa (3 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldemresistancecf2.py b/eos/effects/shipshieldemresistancecf2.py deleted file mode 100644 index 4e68a86aa..000000000 --- a/eos/effects/shipshieldemresistancecf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldEMResistanceCF2 -# -# Used by: -# Variations of ship: Merlin (3 of 4) -# Ship: Cambion -# Ship: Whiptail -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), skill="Caldari Frigate") diff --git a/eos/effects/shipshieldemresistancerookie.py b/eos/effects/shipshieldemresistancerookie.py deleted file mode 100644 index 7005269f0..000000000 --- a/eos/effects/shipshieldemresistancerookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldEMResistanceRookie -# -# Used by: -# Ships from group: Heavy Interdiction Cruiser (3 of 5) -# Ship: Ibis -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldexplosiveresistance1cbc2.py b/eos/effects/shipshieldexplosiveresistance1cbc2.py deleted file mode 100644 index c3e3846de..000000000 --- a/eos/effects/shipshieldexplosiveresistance1cbc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldExplosiveResistance1CBC2 -# -# Used by: -# Ship: Drake -# Ship: Nighthawk -# Ship: Vulture -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldexplosiveresistancecc2.py b/eos/effects/shipshieldexplosiveresistancecc2.py deleted file mode 100644 index 203b2676a..000000000 --- a/eos/effects/shipshieldexplosiveresistancecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipShieldExplosiveResistanceCC2 -# -# Used by: -# Variations of ship: Moa (3 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), - skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldexplosiveresistancecf2.py b/eos/effects/shipshieldexplosiveresistancecf2.py deleted file mode 100644 index 264c2b94d..000000000 --- a/eos/effects/shipshieldexplosiveresistancecf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldExplosiveResistanceCF2 -# -# Used by: -# Variations of ship: Merlin (3 of 4) -# Ship: Cambion -# Ship: Whiptail -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), - skill="Caldari Frigate") diff --git a/eos/effects/shipshieldexplosiveresistancerookie.py b/eos/effects/shipshieldexplosiveresistancerookie.py deleted file mode 100644 index fc80e979d..000000000 --- a/eos/effects/shipshieldexplosiveresistancerookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldExplosiveResistanceRookie -# -# Used by: -# Ships from group: Heavy Interdiction Cruiser (3 of 5) -# Ship: Ibis -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldhitpointscc1.py b/eos/effects/shipshieldhitpointscc1.py deleted file mode 100644 index 06fdfea96..000000000 --- a/eos/effects/shipshieldhitpointscc1.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipShieldHitpointsCC1 -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldCapacity", src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldkineticresistance1cbc2.py b/eos/effects/shipshieldkineticresistance1cbc2.py deleted file mode 100644 index 8db3ea8be..000000000 --- a/eos/effects/shipshieldkineticresistance1cbc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldKineticResistance1CBC2 -# -# Used by: -# Ship: Drake -# Ship: Nighthawk -# Ship: Vulture -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldkineticresistancecc2.py b/eos/effects/shipshieldkineticresistancecc2.py deleted file mode 100644 index d8477420c..000000000 --- a/eos/effects/shipshieldkineticresistancecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipShieldKineticResistanceCC2 -# -# Used by: -# Variations of ship: Moa (3 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), - skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldkineticresistancecf2.py b/eos/effects/shipshieldkineticresistancecf2.py deleted file mode 100644 index 3fd3ebb89..000000000 --- a/eos/effects/shipshieldkineticresistancecf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldKineticResistanceCF2 -# -# Used by: -# Variations of ship: Merlin (3 of 4) -# Ship: Cambion -# Ship: Whiptail -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), - skill="Caldari Frigate") diff --git a/eos/effects/shipshieldkineticresistancerookie.py b/eos/effects/shipshieldkineticresistancerookie.py deleted file mode 100644 index 1d9a00d39..000000000 --- a/eos/effects/shipshieldkineticresistancerookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldKineticResistanceRookie -# -# Used by: -# Ships from group: Heavy Interdiction Cruiser (3 of 5) -# Ship: Ibis -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldthermalresistance1cbc2.py b/eos/effects/shipshieldthermalresistance1cbc2.py deleted file mode 100644 index 4268d279f..000000000 --- a/eos/effects/shipshieldthermalresistance1cbc2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldThermalResistance1CBC2 -# -# Used by: -# Ship: Drake -# Ship: Nighthawk -# Ship: Vulture -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCBC2"), - skill="Caldari Battlecruiser") diff --git a/eos/effects/shipshieldthermalresistancecc2.py b/eos/effects/shipshieldthermalresistancecc2.py deleted file mode 100644 index 9c9328d43..000000000 --- a/eos/effects/shipshieldthermalresistancecc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipShieldThermalResistanceCC2 -# -# Used by: -# Variations of ship: Moa (3 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCC2"), - skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldthermalresistancecf2.py b/eos/effects/shipshieldthermalresistancecf2.py deleted file mode 100644 index 739d4033f..000000000 --- a/eos/effects/shipshieldthermalresistancecf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipShieldThermalResistanceCF2 -# -# Used by: -# Variations of ship: Merlin (3 of 4) -# Ship: Cambion -# Ship: Whiptail -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("shipBonusCF"), - skill="Caldari Frigate") diff --git a/eos/effects/shipshieldthermalresistancerookie.py b/eos/effects/shipshieldthermalresistancerookie.py deleted file mode 100644 index 6b270aa7d..000000000 --- a/eos/effects/shipshieldthermalresistancerookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldThermalResistanceRookie -# -# Used by: -# Ships from group: Heavy Interdiction Cruiser (3 of 5) -# Ship: Ibis -# Ship: Taipan -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", ship.getModifiedItemAttr("rookieShieldResistBonus")) diff --git a/eos/effects/shipshieldtransferfalloffcc1.py b/eos/effects/shipshieldtransferfalloffcc1.py deleted file mode 100644 index 64acc7099..000000000 --- a/eos/effects/shipshieldtransferfalloffcc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldTransferFalloffCC1 -# -# Used by: -# Ship: Basilisk -# Ship: Etana -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldtransferfalloffmc2.py b/eos/effects/shipshieldtransferfalloffmc2.py deleted file mode 100644 index 23a27ca85..000000000 --- a/eos/effects/shipshieldtransferfalloffmc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipShieldTransferFalloffMC2 -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "falloffEffectiveness", - src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipshieldtransferrangecc1.py b/eos/effects/shipshieldtransferrangecc1.py deleted file mode 100644 index fc9ef4cfd..000000000 --- a/eos/effects/shipshieldtransferrangecc1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipShieldTransferRangeCC1 -# -# Used by: -# Ship: Basilisk -# Ship: Etana -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange", - src.getModifiedItemAttr("shipBonusCC"), skill="Caldari Cruiser") diff --git a/eos/effects/shipshieldtransferrangemc2.py b/eos/effects/shipshieldtransferrangemc2.py deleted file mode 100644 index f7096dea4..000000000 --- a/eos/effects/shipshieldtransferrangemc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipShieldTransferRangeMC2 -# -# Used by: -# Ship: Scimitar -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), "maxRange", - src.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipshtdmgbonusgf.py b/eos/effects/shipshtdmgbonusgf.py deleted file mode 100644 index d99426da0..000000000 --- a/eos/effects/shipshtdmgbonusgf.py +++ /dev/null @@ -1,15 +0,0 @@ -# shipSHTDmgBonusGF -# -# Used by: -# Variations of ship: Incursus (3 of 3) -# Ship: Atron -# Ship: Federation Navy Comet -# Ship: Helios -# Ship: Pacifier -# Ship: Taranis -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipshtdmgbonusrookie.py b/eos/effects/shipshtdmgbonusrookie.py deleted file mode 100644 index 5603af34a..000000000 --- a/eos/effects/shipshtdmgbonusrookie.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipSHTDmgBonusRookie -# -# Used by: -# Ship: Velator -# Ship: Violator -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", ship.getModifiedItemAttr("rookieSHTDamageBonus")) diff --git a/eos/effects/shipshtfalloffbonusrookie.py b/eos/effects/shipshtfalloffbonusrookie.py deleted file mode 100644 index b4083f4d3..000000000 --- a/eos/effects/shipshtfalloffbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSHTFalloffBonusRookie -# -# Used by: -# Ship: Violator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "falloff", ship.getModifiedItemAttr("rookieSHTFalloff")) diff --git a/eos/effects/shipshtoptimalbonusgf.py b/eos/effects/shipshtoptimalbonusgf.py deleted file mode 100644 index e6682472b..000000000 --- a/eos/effects/shipshtoptimalbonusgf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSHTOptimalBonusGF -# -# Used by: -# Ship: Ares -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusGF"), skill="Gallente Frigate") diff --git a/eos/effects/shipshtrofgallentetacticaldestroyer1.py b/eos/effects/shipshtrofgallentetacticaldestroyer1.py deleted file mode 100644 index 64e164ab9..000000000 --- a/eos/effects/shipshtrofgallentetacticaldestroyer1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSHTRoFGallenteTacticalDestroyer1 -# -# Used by: -# Ship: Hecate -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "speed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente1"), - skill="Gallente Tactical Destroyer") diff --git a/eos/effects/shipshttrackinggallentetacticaldestroyer2.py b/eos/effects/shipshttrackinggallentetacticaldestroyer2.py deleted file mode 100644 index dfcd8d7f2..000000000 --- a/eos/effects/shipshttrackinggallentetacticaldestroyer2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSHTTrackingGallenteTacticalDestroyer2 -# -# Used by: -# Ship: Hecate -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusTacticalDestroyerGallente2"), - skill="Gallente Tactical Destroyer") diff --git a/eos/effects/shipshttrackingspeedbonusrookie.py b/eos/effects/shipshttrackingspeedbonusrookie.py deleted file mode 100644 index 48b2da45f..000000000 --- a/eos/effects/shipshttrackingspeedbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSHTTrackingSpeedBonusRookie -# -# Used by: -# Ship: Violator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "trackingSpeed", ship.getModifiedItemAttr("rookieSHTTracking")) diff --git a/eos/effects/shipsiegelauncherrofbonus2cb.py b/eos/effects/shipsiegelauncherrofbonus2cb.py deleted file mode 100644 index 9ab173443..000000000 --- a/eos/effects/shipsiegelauncherrofbonus2cb.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSiegeLauncherROFBonus2CB -# -# Used by: -# Ship: Raven -# Ship: Raven State Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", - "speed", ship.getModifiedItemAttr("shipBonus2CB"), skill="Caldari Battleship") diff --git a/eos/effects/shipsignatureradiusmc1.py b/eos/effects/shipsignatureradiusmc1.py deleted file mode 100644 index e366d23af..000000000 --- a/eos/effects/shipsignatureradiusmc1.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipSignatureRadiusMC1 -# -# Used by: -# Ship: Monitor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("signatureRadius", src.getModifiedItemAttr("shipBonusMC"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipsmallmissiledmgpiratefaction.py b/eos/effects/shipsmallmissiledmgpiratefaction.py deleted file mode 100644 index 3a21076cc..000000000 --- a/eos/effects/shipsmallmissiledmgpiratefaction.py +++ /dev/null @@ -1,13 +0,0 @@ -# shipSmallMissileDmgPirateFaction -# -# Used by: -# Ship: Jackdaw -# Ship: Sunesis -type = "passive" - - -def handler(fit, ship, context): - for damageType in ("em", "explosive", "kinetic", "thermal"): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "{0}Damage".format(damageType), ship.getModifiedItemAttr("shipBonusRole7")) diff --git a/eos/effects/shipsmallmissileemdmgcf2.py b/eos/effects/shipsmallmissileemdmgcf2.py deleted file mode 100644 index 3a08f5b10..000000000 --- a/eos/effects/shipsmallmissileemdmgcf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipSmallMissileEMDmgCF2 -# -# Used by: -# Ship: Caldari Navy Hookbill -# Ship: Kestrel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "emDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissileexpdmgcf2.py b/eos/effects/shipsmallmissileexpdmgcf2.py deleted file mode 100644 index 2c03823e6..000000000 --- a/eos/effects/shipsmallmissileexpdmgcf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipSmallMissileExpDmgCF2 -# -# Used by: -# Ship: Caldari Navy Hookbill -# Ship: Kestrel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "explosiveDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissilekindmgcf2.py b/eos/effects/shipsmallmissilekindmgcf2.py deleted file mode 100644 index 9adc59089..000000000 --- a/eos/effects/shipsmallmissilekindmgcf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSmallMissileKinDmgCF2 -# -# Used by: -# Ship: Kestrel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissilekindmgcf3.py b/eos/effects/shipsmallmissilekindmgcf3.py deleted file mode 100644 index bdef8ba12..000000000 --- a/eos/effects/shipsmallmissilekindmgcf3.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipSmallMissileKinDmgCF3 -# -# Used by: -# Ship: Caldari Navy Hookbill - -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Light Missiles") or mod.charge.requiresSkill("Rockets"), "kineticDamage", - src.getModifiedItemAttr("shipBonus3CF"), skill="Caldari Frigate") diff --git a/eos/effects/shipsmallmissilethermdmgcf2.py b/eos/effects/shipsmallmissilethermdmgcf2.py deleted file mode 100644 index e336853e6..000000000 --- a/eos/effects/shipsmallmissilethermdmgcf2.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipSmallMissileThermDmgCF2 -# -# Used by: -# Ship: Caldari Navy Hookbill -# Ship: Kestrel -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost( - lambda mod: mod.charge.requiresSkill("Rockets") or mod.charge.requiresSkill("Light Missiles"), - "thermalDamage", ship.getModifiedItemAttr("shipBonusCF2"), skill="Caldari Frigate") diff --git a/eos/effects/shipsptdamageminmatartacticaldestroyer1.py b/eos/effects/shipsptdamageminmatartacticaldestroyer1.py deleted file mode 100644 index 9c435c7de..000000000 --- a/eos/effects/shipsptdamageminmatartacticaldestroyer1.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSPTDamageMinmatarTacticalDestroyer1 -# -# Used by: -# Ship: Svipul -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar1"), - skill="Minmatar Tactical Destroyer") diff --git a/eos/effects/shipsptdmgbonusrookie.py b/eos/effects/shipsptdmgbonusrookie.py deleted file mode 100644 index 3646da72c..000000000 --- a/eos/effects/shipsptdmgbonusrookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSPTDmgBonusRookie -# -# Used by: -# Ship: Echo -# Ship: Reaper -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", ship.getModifiedItemAttr("rookieSPTDamageBonus")) diff --git a/eos/effects/shipsptfalloffbonusrookie.py b/eos/effects/shipsptfalloffbonusrookie.py deleted file mode 100644 index 0509c7dde..000000000 --- a/eos/effects/shipsptfalloffbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSPTFalloffBonusRookie -# -# Used by: -# Ship: Echo -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "falloff", ship.getModifiedItemAttr("rookieSPTFalloff")) diff --git a/eos/effects/shipsptoptimalbonusmf.py b/eos/effects/shipsptoptimalbonusmf.py deleted file mode 100644 index 1f7255f44..000000000 --- a/eos/effects/shipsptoptimalbonusmf.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSPTOptimalBonusMF -# -# Used by: -# Ship: Chremoas -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusMF"), skill="Minmatar Frigate") diff --git a/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py b/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py deleted file mode 100644 index 0668d5b00..000000000 --- a/eos/effects/shipsptoptimalminmatartacticaldestroyer2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipSPTOptimalMinmatarTacticalDestroyer2 -# -# Used by: -# Ship: Svipul -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("shipBonusTacticalDestroyerMinmatar2"), - skill="Minmatar Tactical Destroyer") diff --git a/eos/effects/shipsptoptimalrangebonusrookie.py b/eos/effects/shipsptoptimalrangebonusrookie.py deleted file mode 100644 index a7c289fea..000000000 --- a/eos/effects/shipsptoptimalrangebonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSPTOptimalRangeBonusRookie -# -# Used by: -# Ship: Echo -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("rookieSPTOptimal")) diff --git a/eos/effects/shipspttrackingspeedbonusrookie.py b/eos/effects/shipspttrackingspeedbonusrookie.py deleted file mode 100644 index c6a0bca15..000000000 --- a/eos/effects/shipspttrackingspeedbonusrookie.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipSPTTrackingSpeedBonusRookie -# -# Used by: -# Ship: Echo -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "trackingSpeed", ship.getModifiedItemAttr("rookieSPTTracking")) diff --git a/eos/effects/shipstasiswebrangebonusmb.py b/eos/effects/shipstasiswebrangebonusmb.py deleted file mode 100644 index b7513bbda..000000000 --- a/eos/effects/shipstasiswebrangebonusmb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipStasisWebRangeBonusMB -# -# Used by: -# Ship: Bhaalgorn -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", ship.getModifiedItemAttr("shipBonusMB"), skill="Minmatar Battleship") diff --git a/eos/effects/shipstasiswebrangebonusmc2.py b/eos/effects/shipstasiswebrangebonusmc2.py deleted file mode 100644 index 3b43a9b64..000000000 --- a/eos/effects/shipstasiswebrangebonusmc2.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipStasisWebRangeBonusMC2 -# -# Used by: -# Ship: Ashimmu -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipstasiswebstrengthbonusmc2.py b/eos/effects/shipstasiswebstrengthbonusmc2.py deleted file mode 100644 index 03a6c3198..000000000 --- a/eos/effects/shipstasiswebstrengthbonusmc2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipStasisWebStrengthBonusMC2 -# -# Used by: -# Ship: Victor -# Ship: Vigilant -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "speedFactor", ship.getModifiedItemAttr("shipBonusMC2"), skill="Minmatar Cruiser") diff --git a/eos/effects/shipstasiswebstrengthbonusmf2.py b/eos/effects/shipstasiswebstrengthbonusmf2.py deleted file mode 100644 index 09822f202..000000000 --- a/eos/effects/shipstasiswebstrengthbonusmf2.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipStasisWebStrengthBonusMF2 -# -# Used by: -# Ship: Daredevil -# Ship: Virtuoso -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "speedFactor", ship.getModifiedItemAttr("shipBonusMF2"), skill="Minmatar Frigate") diff --git a/eos/effects/shiptcapneedbonusac.py b/eos/effects/shiptcapneedbonusac.py deleted file mode 100644 index 00e4ac757..000000000 --- a/eos/effects/shiptcapneedbonusac.py +++ /dev/null @@ -1,12 +0,0 @@ -# shipTCapNeedBonusAC -# -# Used by: -# Ship: Devoter -# Ship: Omen -# Ship: Zealot -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", ship.getModifiedItemAttr("shipBonusAC"), skill="Amarr Cruiser") diff --git a/eos/effects/shiptorpedoaoecloudsize1cb.py b/eos/effects/shiptorpedoaoecloudsize1cb.py deleted file mode 100644 index ca8a1b166..000000000 --- a/eos/effects/shiptorpedoaoecloudsize1cb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipTorpedoAOECloudSize1CB -# -# Used by: -# Ship: Raven Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "aoeCloudSize", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shiptorpedorofcb.py b/eos/effects/shiptorpedorofcb.py deleted file mode 100644 index 22d81e5fa..000000000 --- a/eos/effects/shiptorpedorofcb.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipTorpedoROFCB -# -# Used by: -# Ship: Scorpion Navy Issue -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Torpedo", - "speed", ship.getModifiedItemAttr("shipBonusCB"), skill="Caldari Battleship") diff --git a/eos/effects/shiptorpedosvelocitybonuscb3.py b/eos/effects/shiptorpedosvelocitybonuscb3.py deleted file mode 100644 index 6bedfb8c6..000000000 --- a/eos/effects/shiptorpedosvelocitybonuscb3.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipTorpedosVelocityBonusCB3 -# -# Used by: -# Variations of ship: Raven (3 of 4) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Torpedoes"), - "maxVelocity", ship.getModifiedItemAttr("shipBonusCB3"), skill="Caldari Battleship") diff --git a/eos/effects/shiptrackingbonusab.py b/eos/effects/shiptrackingbonusab.py deleted file mode 100644 index ad820e01d..000000000 --- a/eos/effects/shiptrackingbonusab.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipTrackingBonusAB -# -# Used by: -# Ship: Nightmare -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Large Energy Turret"), - "trackingSpeed", ship.getModifiedItemAttr("shipBonusAB2"), skill="Amarr Battleship") diff --git a/eos/effects/shipvelocitybonusai.py b/eos/effects/shipvelocitybonusai.py deleted file mode 100644 index 3ba16182d..000000000 --- a/eos/effects/shipvelocitybonusai.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipVelocityBonusAI -# -# Used by: -# Variations of ship: Bestower (2 of 2) -# Ship: Prorator -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusAI"), skill="Amarr Industrial") diff --git a/eos/effects/shipvelocitybonusatc1.py b/eos/effects/shipvelocitybonusatc1.py deleted file mode 100644 index 7b2c31830..000000000 --- a/eos/effects/shipvelocitybonusatc1.py +++ /dev/null @@ -1,10 +0,0 @@ -# shipVelocityBonusATC1 -# -# Used by: -# Ship: Adrestia -# Ship: Mimir -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusATC1")) diff --git a/eos/effects/shipvelocitybonusmi.py b/eos/effects/shipvelocitybonusmi.py deleted file mode 100644 index fe05cb921..000000000 --- a/eos/effects/shipvelocitybonusmi.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipVelocityBonusMI -# -# Used by: -# Variations of ship: Mammoth (2 of 2) -# Ship: Hoarder -# Ship: Prowler -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("shipBonusMI"), skill="Minmatar Industrial") diff --git a/eos/effects/shipvelocitybonusrookie.py b/eos/effects/shipvelocitybonusrookie.py deleted file mode 100644 index b0634e3f3..000000000 --- a/eos/effects/shipvelocitybonusrookie.py +++ /dev/null @@ -1,9 +0,0 @@ -# shipVelocityBonusRookie -# -# Used by: -# Ship: Reaper -type = "passive" - - -def handler(fit, ship, context): - fit.ship.boostItemAttr("maxVelocity", ship.getModifiedItemAttr("rookieShipVelocityBonus")) diff --git a/eos/effects/shipwebvelocitybonusrookie.py b/eos/effects/shipwebvelocitybonusrookie.py deleted file mode 100644 index d8f5468c8..000000000 --- a/eos/effects/shipwebvelocitybonusrookie.py +++ /dev/null @@ -1,11 +0,0 @@ -# shipWebVelocityBonusRookie -# -# Used by: -# Ship: Hematos -# Ship: Violator -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "speedFactor", ship.getModifiedItemAttr("rookieWebAmount")) diff --git a/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py b/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py deleted file mode 100644 index 5401527b9..000000000 --- a/eos/effects/signatureanalysisscanresolutionbonuspostpercentscanresolutionship.py +++ /dev/null @@ -1,15 +0,0 @@ -# signatureAnalysisScanResolutionBonusPostPercentScanResolutionShip -# -# Used by: -# Implants named like: Zainou 'Gypsy' Signature Analysis SA (6 of 6) -# Modules named like: Targeting System Subcontroller (8 of 8) -# Implant: Quafe Zero -# Skill: Signature Analysis -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - penalized = False if "skill" in context or "implant" in context or "booster" in context else True - fit.ship.boostItemAttr("scanResolution", container.getModifiedItemAttr("scanResolutionBonus") * level, - stackingPenalties=penalized) diff --git a/eos/effects/signatureradiusaddpassive.py b/eos/effects/signatureradiusaddpassive.py deleted file mode 100644 index 5282f3ce1..000000000 --- a/eos/effects/signatureradiusaddpassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# signatureRadiusAddPassive -# -# Used by: -# Subsystems from group: Defensive Systems (8 of 12) -# Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadius")) diff --git a/eos/effects/skilladvancedweaponupgradespowerneedbonus.py b/eos/effects/skilladvancedweaponupgradespowerneedbonus.py deleted file mode 100644 index 6cd2337c9..000000000 --- a/eos/effects/skilladvancedweaponupgradespowerneedbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillAdvancedWeaponUpgradesPowerNeedBonus -# -# Used by: -# Skill: Advanced Weapon Upgrades -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost( - lambda mod: mod.item.requiresSkill("Gunnery") or mod.item.requiresSkill("Missile Launcher Operation"), - "power", skill.getModifiedItemAttr("powerNeedBonus") * skill.level) diff --git a/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py b/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py deleted file mode 100644 index 769b0327f..000000000 --- a/eos/effects/skilladvancedweaponupgradespowerneedbonusbomblaunchers.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillAdvancedWeaponUpgradesPowerNeedBonusBombLaunchers -# -# Used by: -# Skill: Advanced Weapon Upgrades -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Bomb Deployment"), - "power", skill.getModifiedItemAttr("powerNeedBonus") * skill.level) diff --git a/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py b/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py deleted file mode 100644 index 4db900c9b..000000000 --- a/eos/effects/skillbombdeploymentmodulereactivationdelaybonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillBombDeploymentModuleReactivationDelayBonus -# -# Used by: -# Skill: Bomb Deployment -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Missile Launcher Bomb", - "moduleReactivationDelay", skill.getModifiedItemAttr("reactivationDelayBonus") * skill.level) diff --git a/eos/effects/skillbonuscapitalartilleryspecialization.py b/eos/effects/skillbonuscapitalartilleryspecialization.py deleted file mode 100644 index 3a2f7b5c9..000000000 --- a/eos/effects/skillbonuscapitalartilleryspecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusCapitalArtillerySpecialization -# -# Used by: -# Skill: Capital Artillery Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Artillery Specialization"), - "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalautocannonspecialization.py b/eos/effects/skillbonuscapitalautocannonspecialization.py deleted file mode 100644 index 9077ff379..000000000 --- a/eos/effects/skillbonuscapitalautocannonspecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusCapitalAutocannonSpecialization -# -# Used by: -# Skill: Capital Autocannon Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Autocannon Specialization"), - "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalbeamlaserspecialization.py b/eos/effects/skillbonuscapitalbeamlaserspecialization.py deleted file mode 100644 index 82ff0a0c1..000000000 --- a/eos/effects/skillbonuscapitalbeamlaserspecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusCapitalBeamLaserSpecialization -# -# Used by: -# Skill: Capital Beam Laser Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Beam Laser Specialization"), - "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalblasterspecialization.py b/eos/effects/skillbonuscapitalblasterspecialization.py deleted file mode 100644 index 41d923389..000000000 --- a/eos/effects/skillbonuscapitalblasterspecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusCapitalBlasterSpecialization -# -# Used by: -# Skill: Capital Blaster Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Blaster Specialization"), - "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalpulselaserspecialization.py b/eos/effects/skillbonuscapitalpulselaserspecialization.py deleted file mode 100644 index 514eb5b2a..000000000 --- a/eos/effects/skillbonuscapitalpulselaserspecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusCapitalPulseLaserSpecialization -# -# Used by: -# Skill: Capital Pulse Laser Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Pulse Laser Specialization"), - "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuscapitalrailgunspecialization.py b/eos/effects/skillbonuscapitalrailgunspecialization.py deleted file mode 100644 index 98d17a9bb..000000000 --- a/eos/effects/skillbonuscapitalrailgunspecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusCapitalRailgunSpecialization -# -# Used by: -# Skill: Capital Railgun Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Railgun Specialization"), - "damageMultiplier", src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonusdoomsdayrapidfiring.py b/eos/effects/skillbonusdoomsdayrapidfiring.py deleted file mode 100644 index 89e206f6d..000000000 --- a/eos/effects/skillbonusdoomsdayrapidfiring.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusDoomsdayRapidFiring -# -# Used by: -# Skill: Doomsday Rapid Firing -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Doomsday Operation"), "duration", - src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/skillbonusdronedurability.py b/eos/effects/skillbonusdronedurability.py deleted file mode 100644 index f36e82a3f..000000000 --- a/eos/effects/skillbonusdronedurability.py +++ /dev/null @@ -1,17 +0,0 @@ -# skillBonusDroneDurability -# -# Used by: -# Skill: Drone Durability -type = "passive" - - -def handler(fit, src, context): - lvl = src.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", - src.getModifiedItemAttr("hullHpBonus") * lvl) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", - src.getModifiedItemAttr("armorHpBonus") * lvl) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", - src.getModifiedItemAttr("shieldCapacityBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "shieldCapacity", - src.getModifiedItemAttr("shieldCapacityBonus") * lvl) diff --git a/eos/effects/skillbonusdronedurabilitynotfighters.py b/eos/effects/skillbonusdronedurabilitynotfighters.py deleted file mode 100644 index d2b8a0967..000000000 --- a/eos/effects/skillbonusdronedurabilitynotfighters.py +++ /dev/null @@ -1,14 +0,0 @@ -# skillBonusDroneDurabilityNotFighters -# -# Used by: -# Implants from group: Cyber Drones (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "hp", - src.getModifiedItemAttr("hullHpBonus")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "armorHP", - src.getModifiedItemAttr("armorHpBonus")) - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "shieldCapacity", - src.getModifiedItemAttr("shieldCapacityBonus")) diff --git a/eos/effects/skillbonusdroneinterfacing.py b/eos/effects/skillbonusdroneinterfacing.py deleted file mode 100644 index d832d432b..000000000 --- a/eos/effects/skillbonusdroneinterfacing.py +++ /dev/null @@ -1,22 +0,0 @@ -# skillBonusDroneInterfacing -# -# Used by: -# Skill: Drone Interfacing -type = "passive" - - -def handler(fit, src, context): - lvl = src.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.drones.filteredItemBoost(lambda drone: drone.item.requiresSkill("Mining Drone Operation"), "miningDroneAmountPercent", - src.getModifiedItemAttr("miningAmountBonus") * lvl) diff --git a/eos/effects/skillbonusdroneinterfacingnotfighters.py b/eos/effects/skillbonusdroneinterfacingnotfighters.py deleted file mode 100644 index 01ab85de7..000000000 --- a/eos/effects/skillbonusdroneinterfacingnotfighters.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusDroneInterfacingNotFighters -# -# Used by: -# Implant: CreoDron 'Bumblebee' Drone Tuner T10-5D -# Implant: CreoDron 'Yellowjacket' Drone Tuner D5-10T -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "damageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/skillbonusdronenavigation.py b/eos/effects/skillbonusdronenavigation.py deleted file mode 100644 index 4f5dd8bc5..000000000 --- a/eos/effects/skillbonusdronenavigation.py +++ /dev/null @@ -1,13 +0,0 @@ -# skillBonusDroneNavigation -# -# Used by: -# Skill: Drone Navigation -type = "passive" - - -def handler(fit, src, context): - lvl = src.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxVelocity", - src.getModifiedItemAttr("maxVelocityBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "maxVelocity", - src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/skillbonusdronesharpshooting.py b/eos/effects/skillbonusdronesharpshooting.py deleted file mode 100644 index ea0738dc1..000000000 --- a/eos/effects/skillbonusdronesharpshooting.py +++ /dev/null @@ -1,19 +0,0 @@ -# skillBonusDroneSharpshooting -# -# Used by: -# Skill: Drone Sharpshooting -type = "passive" - - -def handler(fit, src, context): - lvl = src.level if "skill" in context else 1 - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), "maxRange", - src.getModifiedItemAttr("rangeSkillBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), "fighterAbilityMissilesRange", - src.getModifiedItemAttr("rangeSkillBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretRangeOptimal", - src.getModifiedItemAttr("rangeSkillBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileRangeOptimal", - src.getModifiedItemAttr("rangeSkillBonus") * lvl) diff --git a/eos/effects/skillbonusfighterhangarmanagement.py b/eos/effects/skillbonusfighterhangarmanagement.py deleted file mode 100644 index 8cf44cbe8..000000000 --- a/eos/effects/skillbonusfighterhangarmanagement.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillBonusFighterHangarManagement -# -# Used by: -# Skill: Fighter Hangar Management -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.ship.boostItemAttr("fighterCapacity", src.getModifiedItemAttr("skillBonusFighterHangarSize") * lvl) diff --git a/eos/effects/skillbonusfighters.py b/eos/effects/skillbonusfighters.py deleted file mode 100644 index 4d22c78ae..000000000 --- a/eos/effects/skillbonusfighters.py +++ /dev/null @@ -1,18 +0,0 @@ -# skillBonusFighters -# -# Used by: -# Skill: Fighters -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonusheavyfighters.py b/eos/effects/skillbonusheavyfighters.py deleted file mode 100644 index 7c19ebb2d..000000000 --- a/eos/effects/skillbonusheavyfighters.py +++ /dev/null @@ -1,18 +0,0 @@ -# skillBonusHeavyFighters -# -# Used by: -# Skill: Heavy Fighters -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), - "fighterAbilityMissilesDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), - "fighterAbilityAttackMissileDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Heavy Fighters"), - "fighterAbilityAttackTurretDamageMultiplier", - src.getModifiedItemAttr("damageMultiplierBonus") * lvl) diff --git a/eos/effects/skillbonuslightfighters.py b/eos/effects/skillbonuslightfighters.py deleted file mode 100644 index d41e21428..000000000 --- a/eos/effects/skillbonuslightfighters.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusLightFighters -# -# Used by: -# Skill: Light Fighters -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Light Fighters"), "maxVelocity", - src.getModifiedItemAttr("maxVelocityBonus") * lvl) diff --git a/eos/effects/skillbonussupportfightersshield.py b/eos/effects/skillbonussupportfightersshield.py deleted file mode 100644 index d6758f279..000000000 --- a/eos/effects/skillbonussupportfightersshield.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusSupportFightersShield -# -# Used by: -# Skill: Support Fighters -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.fighters.filteredItemBoost(lambda mod: mod.item.requiresSkill("Support Fighters"), "shieldCapacity", - src.getModifiedItemAttr("shieldBonus") * lvl) diff --git a/eos/effects/skillbonusxlcruisemissilespecialization.py b/eos/effects/skillbonusxlcruisemissilespecialization.py deleted file mode 100644 index cc51709e3..000000000 --- a/eos/effects/skillbonusxlcruisemissilespecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusXLCruiseMissileSpecialization -# -# Used by: -# Skill: XL Cruise Missile Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Cruise Missile Specialization"), "speed", - src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/skillbonusxltorpedospecialization.py b/eos/effects/skillbonusxltorpedospecialization.py deleted file mode 100644 index 7393d111e..000000000 --- a/eos/effects/skillbonusxltorpedospecialization.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillBonusXLTorpedoSpecialization -# -# Used by: -# Skill: XL Torpedo Specialization -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("XL Torpedo Specialization"), "speed", - src.getModifiedItemAttr("rofBonus") * lvl) diff --git a/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py b/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py deleted file mode 100644 index 984efa65e..000000000 --- a/eos/effects/skillcapitalremotehullrepairsystemscapneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillCapitalRemoteHullRepairSystemsCapNeedBonus -# -# Used by: -# Skill: Capital Remote Hull Repair Systems -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Capital Remote Hull Repair Systems"), - "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/skillcapitalshipsadvancedagility.py b/eos/effects/skillcapitalshipsadvancedagility.py deleted file mode 100644 index 5a0846335..000000000 --- a/eos/effects/skillcapitalshipsadvancedagility.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillCapitalShipsAdvancedAgility -# -# Used by: -# Skill: Capital Ships -type = "passive" - - -def handler(fit, skill, context): - if fit.ship.item.requiresSkill("Capital Ships"): - fit.ship.boostItemAttr("agility", skill.getModifiedItemAttr("agilityBonus") * skill.level) diff --git a/eos/effects/skillfreightbonus.py b/eos/effects/skillfreightbonus.py deleted file mode 100644 index 93f4c33cf..000000000 --- a/eos/effects/skillfreightbonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# skillFreightBonus -# -# Used by: -# Modules named like: Cargohold Optimization (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("capacity", module.getModifiedItemAttr("cargoCapacityBonus")) diff --git a/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py b/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py deleted file mode 100644 index e6b8f558b..000000000 --- a/eos/effects/skillindustrialreconfigurationconsumptionquantitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillIndustrialReconfigurationConsumptionQuantityBonus -# -# Used by: -# Skill: Industrial Reconfiguration -type = "passive" - - -def handler(fit, skill, context): - amount = -skill.getModifiedItemAttr("consumptionQuantityBonus") - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), - "consumptionQuantity", amount * skill.level) diff --git a/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py b/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py deleted file mode 100644 index 5cb2d9654..000000000 --- a/eos/effects/skilljumpdriveconsumptionamountbonuspercentage.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillJumpDriveConsumptionAmountBonusPercentage -# -# Used by: -# Skill: Jump Fuel Conservation -type = "passive" - - -def handler(fit, skill, context): - fit.ship.boostItemAttr("jumpDriveConsumptionAmount", - skill.getModifiedItemAttr("consumptionQuantityBonusPercentage") * skill.level) diff --git a/eos/effects/skillmjddurationbonus.py b/eos/effects/skillmjddurationbonus.py deleted file mode 100644 index ec949212a..000000000 --- a/eos/effects/skillmjddurationbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillMJDdurationBonus -# -# Used by: -# Skill: Micro Jump Drive Operation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Micro Jump Drive Operation"), - "duration", skill.getModifiedItemAttr("durationBonus") * skill.level) diff --git a/eos/effects/skillmultiplierdefendermissilevelocity.py b/eos/effects/skillmultiplierdefendermissilevelocity.py deleted file mode 100644 index 137e31f44..000000000 --- a/eos/effects/skillmultiplierdefendermissilevelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillMultiplierDefenderMissileVelocity -# -# Used by: -# Skill: Defender Missiles -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Defender Missiles"), - "maxVelocity", skill.getModifiedItemAttr("missileVelocityBonus") * skill.level) diff --git a/eos/effects/skillreactivearmorhardenercapneedbonus.py b/eos/effects/skillreactivearmorhardenercapneedbonus.py deleted file mode 100644 index a8baab0f4..000000000 --- a/eos/effects/skillreactivearmorhardenercapneedbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# skillReactiveArmorHardenerCapNeedBonus -# -# Used by: -# Skill: Resistance Phasing -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Resistance Shift Hardener", "capacitorNeed", - src.getModifiedItemAttr("capNeedBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Resistance Phasing"), "capacitorNeed", - src.getModifiedItemAttr("capNeedBonus") * lvl) diff --git a/eos/effects/skillreactivearmorhardenerdurationbonus.py b/eos/effects/skillreactivearmorhardenerdurationbonus.py deleted file mode 100644 index 00ced0d4f..000000000 --- a/eos/effects/skillreactivearmorhardenerdurationbonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# skillReactiveArmorHardenerDurationBonus -# -# Used by: -# Skill: Resistance Phasing -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Resistance Shift Hardener", "duration", - src.getModifiedItemAttr("durationBonus") * lvl) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Resistance Phasing"), "duration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/skillremoteecmdurationbonus.py b/eos/effects/skillremoteecmdurationbonus.py deleted file mode 100644 index 77c687f34..000000000 --- a/eos/effects/skillremoteecmdurationbonus.py +++ /dev/null @@ -1,33 +0,0 @@ -# skillRemoteECMDurationBonus -# -# Used by: -# Skill: Burst Projector Operation -type = "passive" - - -def handler(fit, skill, context): - # We need to make sure that the attribute exists, otherwise we add attributes that don't belong. See #927 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation") and - mod.item.getAttribute("duration"), - "duration", - skill.getModifiedItemAttr("projECMDurationBonus") * skill.level) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation") and - mod.item.getAttribute("durationECMJammerBurstProjector"), - "durationECMJammerBurstProjector", - skill.getModifiedItemAttr("projECMDurationBonus") * skill.level) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation") and - mod.item.getAttribute("durationTargetIlluminationBurstProjector"), - "durationTargetIlluminationBurstProjector", - skill.getModifiedItemAttr("projECMDurationBonus") * skill.level) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation") and - mod.item.getAttribute("durationSensorDampeningBurstProjector"), - "durationSensorDampeningBurstProjector", - skill.getModifiedItemAttr("projECMDurationBonus") * skill.level) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Burst Projector Operation") and - mod.item.getAttribute("durationWeaponDisruptionBurstProjector"), - "durationWeaponDisruptionBurstProjector", - skill.getModifiedItemAttr("projECMDurationBonus") * skill.level) diff --git a/eos/effects/skillremotehullrepairsystemscapneedbonus.py b/eos/effects/skillremotehullrepairsystemscapneedbonus.py deleted file mode 100644 index e5f173bbe..000000000 --- a/eos/effects/skillremotehullrepairsystemscapneedbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillRemoteHullRepairSystemsCapNeedBonus -# -# Used by: -# Skill: Remote Hull Repair Systems -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Hull Repair Systems"), - "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/skillsiegemoduleconsumptionquantitybonus.py b/eos/effects/skillsiegemoduleconsumptionquantitybonus.py deleted file mode 100644 index 119ed3072..000000000 --- a/eos/effects/skillsiegemoduleconsumptionquantitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillSiegeModuleConsumptionQuantityBonus -# -# Used by: -# Skill: Tactical Weapon Reconfiguration -type = "passive" - - -def handler(fit, skill, context): - amount = -skill.getModifiedItemAttr("consumptionQuantityBonus") - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), - "consumptionQuantity", amount * skill.level) diff --git a/eos/effects/skillstructuredoomsdaydurationbonus.py b/eos/effects/skillstructuredoomsdaydurationbonus.py deleted file mode 100644 index e5c0d43c1..000000000 --- a/eos/effects/skillstructuredoomsdaydurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillStructureDoomsdayDurationBonus -# -# Used by: -# Skill: Structure Doomsday Operation -type = "passive", "structure" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Doomsday Weapon", - "duration", src.getModifiedItemAttr("durationBonus"), - skill="Structure Doomsday Operation") diff --git a/eos/effects/skillstructureelectronicsystemscapneedbonus.py b/eos/effects/skillstructureelectronicsystemscapneedbonus.py deleted file mode 100644 index ee898cbc0..000000000 --- a/eos/effects/skillstructureelectronicsystemscapneedbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# skillStructureElectronicSystemsCapNeedBonus -# -# Used by: -# Skill: Structure Electronic Systems -type = "passive", "structure" - - -def handler(fit, src, context): - groups = ("Structure Warp Scrambler", "Structure Disruption Battery", "Structure Stasis Webifier") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", src.getModifiedItemAttr("capNeedBonus"), - skill="Structure Electronic Systems") diff --git a/eos/effects/skillstructureengineeringsystemscapneedbonus.py b/eos/effects/skillstructureengineeringsystemscapneedbonus.py deleted file mode 100644 index c58dea119..000000000 --- a/eos/effects/skillstructureengineeringsystemscapneedbonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# skillStructureEngineeringSystemsCapNeedBonus -# -# Used by: -# Skill: Structure Engineering Systems -type = "passive", "structure" - - -def handler(fit, src, context): - groups = ("Structure Energy Neutralizer", "Structure Area Denial Module") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", src.getModifiedItemAttr("capNeedBonus"), - skill="Structure Engineering Systems") diff --git a/eos/effects/skillstructuremissiledamagebonus.py b/eos/effects/skillstructuremissiledamagebonus.py deleted file mode 100644 index 114a831b6..000000000 --- a/eos/effects/skillstructuremissiledamagebonus.py +++ /dev/null @@ -1,13 +0,0 @@ -# skillStructureMissileDamageBonus -# -# Used by: -# Skill: Structure Missile Systems -type = "passive", "structure" - - -def handler(fit, src, context): - groups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile", "Structure Guided Bomb") - for damageType in ("em", "thermal", "explosive", "kinetic"): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, - "%sDamage" % damageType, src.getModifiedItemAttr("damageMultiplierBonus"), - skill="Structure Missile Systems") diff --git a/eos/effects/skillsuperweapondmgbonus.py b/eos/effects/skillsuperweapondmgbonus.py deleted file mode 100644 index e2952621f..000000000 --- a/eos/effects/skillsuperweapondmgbonus.py +++ /dev/null @@ -1,14 +0,0 @@ -# skillSuperWeaponDmgBonus -# -# Used by: -# Skill: Doomsday Operation -type = "passive" - - -def handler(fit, skill, context): - damageTypes = ("em", "explosive", "kinetic", "thermal") - for dmgType in damageTypes: - dmgAttr = "{0}Damage".format(dmgType) - fit.modules.filteredItemBoost( - lambda mod: mod.item.group.name == "Super Weapon" and dmgAttr in mod.itemModifiedAttributes, - dmgAttr, skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/skilltargetbreakercapneedbonus2.py b/eos/effects/skilltargetbreakercapneedbonus2.py deleted file mode 100644 index 1bd8dbdfe..000000000 --- a/eos/effects/skilltargetbreakercapneedbonus2.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillTargetBreakerCapNeedBonus2 -# -# Used by: -# Skill: Target Breaker Amplification -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Breaker", - "capacitorNeed", skill.getModifiedItemAttr("capNeedBonus") * skill.level) diff --git a/eos/effects/skilltargetbreakerdurationbonus2.py b/eos/effects/skilltargetbreakerdurationbonus2.py deleted file mode 100644 index 13cee98c8..000000000 --- a/eos/effects/skilltargetbreakerdurationbonus2.py +++ /dev/null @@ -1,10 +0,0 @@ -# skillTargetBreakerDurationBonus2 -# -# Used by: -# Skill: Target Breaker Amplification -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Target Breaker", - "duration", skill.getModifiedItemAttr("durationBonus") * skill.level) diff --git a/eos/effects/skilltriagemoduleconsumptionquantitybonus.py b/eos/effects/skilltriagemoduleconsumptionquantitybonus.py deleted file mode 100644 index 3682128c1..000000000 --- a/eos/effects/skilltriagemoduleconsumptionquantitybonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# skillTriageModuleConsumptionQuantityBonus -# -# Used by: -# Skill: Tactical Logistics Reconfiguration -type = "passive" - - -def handler(fit, skill, context): - amount = -skill.getModifiedItemAttr("consumptionQuantityBonus") - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill(skill), - "consumptionQuantity", amount * skill.level) diff --git a/eos/effects/skirmishcommanddurationbonus.py b/eos/effects/skirmishcommanddurationbonus.py deleted file mode 100644 index 7b42437e1..000000000 --- a/eos/effects/skirmishcommanddurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# skirmishCommandDurationBonus -# -# Used by: -# Skill: Skirmish Command -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/skirmishcommandmindlink.py b/eos/effects/skirmishcommandmindlink.py deleted file mode 100644 index 9999d7f56..000000000 --- a/eos/effects/skirmishcommandmindlink.py +++ /dev/null @@ -1,20 +0,0 @@ -# skirmishCommandMindlink -# -# Used by: -# Implant: Federation Navy Command Mindlink -# Implant: Republic Fleet Command Mindlink -# Implant: Skirmish Command Mindlink -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("mindlinkBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "buffDuration", - src.getModifiedItemAttr("mindlinkBonus")) diff --git a/eos/effects/skirmishcommandstrengthbonus.py b/eos/effects/skirmishcommandstrengthbonus.py deleted file mode 100644 index 7963755df..000000000 --- a/eos/effects/skirmishcommandstrengthbonus.py +++ /dev/null @@ -1,17 +0,0 @@ -# skirmishCommandStrengthBonus -# -# Used by: -# Skill: Skirmish Command Specialist -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff3Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff4Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff1Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), "warfareBuff2Multiplier", - src.getModifiedItemAttr("commandStrengthBonus") * lvl) diff --git a/eos/effects/slotmodifier.py b/eos/effects/slotmodifier.py deleted file mode 100644 index e4bfe2afb..000000000 --- a/eos/effects/slotmodifier.py +++ /dev/null @@ -1,11 +0,0 @@ -# slotModifier -# -# Used by: -# Items from category: Subsystem (48 of 48) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("hiSlots", module.getModifiedItemAttr("hiSlotModifier")) - fit.ship.increaseItemAttr("medSlots", module.getModifiedItemAttr("medSlotModifier")) - fit.ship.increaseItemAttr("lowSlots", module.getModifiedItemAttr("lowSlotModifier")) diff --git a/eos/effects/smalldisintegratormaxrangebonus.py b/eos/effects/smalldisintegratormaxrangebonus.py deleted file mode 100644 index 74e4dca9d..000000000 --- a/eos/effects/smalldisintegratormaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# smallDisintegratorMaxRangeBonus -# -# Used by: -# Ship: Kikimora -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smalldisintegratorskilldmgbonus.py b/eos/effects/smalldisintegratorskilldmgbonus.py deleted file mode 100644 index 8a3b7babe..000000000 --- a/eos/effects/smalldisintegratorskilldmgbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# smallDisintegratorSkillDmgBonus -# -# Used by: -# Skill: Small Disintegrator Specialization -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Disintegrator Specialization"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/smallenergymaxrangebonus.py b/eos/effects/smallenergymaxrangebonus.py deleted file mode 100644 index 4c13361f6..000000000 --- a/eos/effects/smallenergymaxrangebonus.py +++ /dev/null @@ -1,12 +0,0 @@ -# smallEnergyMaxRangeBonus -# -# Used by: -# Ship: Coercer -# Ship: Gold Magnate -# Ship: Silver Magnate -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py b/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py deleted file mode 100644 index 496efc986..000000000 --- a/eos/effects/smallenergyturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallenergyturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# smallEnergyTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringSmallEnergyTurret -# -# Used by: -# Implants named like: Inherent Implants 'Lancer' Small Energy Turret SE (6 of 6) -# Skill: Small Energy Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/smallhybridmaxrangebonus.py b/eos/effects/smallhybridmaxrangebonus.py deleted file mode 100644 index 86e95036d..000000000 --- a/eos/effects/smallhybridmaxrangebonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# smallHybridMaxRangeBonus -# -# Used by: -# Ship: Catalyst -# Ship: Cormorant -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py b/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py deleted file mode 100644 index f317f297b..000000000 --- a/eos/effects/smallhybridturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallhybridturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# smallHybridTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringSmallHybridTurret -# -# Used by: -# Implants named like: Zainou 'Deadeye' Small Hybrid Turret SH (6 of 6) -# Skill: Small Hybrid Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/smallprecursorturretdmgbonusrequiredskill.py b/eos/effects/smallprecursorturretdmgbonusrequiredskill.py deleted file mode 100644 index 1d3fbe176..000000000 --- a/eos/effects/smallprecursorturretdmgbonusrequiredskill.py +++ /dev/null @@ -1,11 +0,0 @@ -# smallPrecursorTurretDmgBonusRequiredSkill -# -# Used by: -# Skill: Small Precursor Weapon -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/smallprojectilemaxrangebonus.py b/eos/effects/smallprojectilemaxrangebonus.py deleted file mode 100644 index b94e016be..000000000 --- a/eos/effects/smallprojectilemaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# smallProjectileMaxRangeBonus -# -# Used by: -# Ship: Thrasher -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "maxRange", ship.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py b/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py deleted file mode 100644 index a77f76806..000000000 --- a/eos/effects/smallprojectileturretdamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringsmallprojectileturret.py +++ /dev/null @@ -1,12 +0,0 @@ -# smallProjectileTurretDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringSmallProjectileTurret -# -# Used by: -# Implants named like: Eifyr and Co. 'Gunslinger' Small Projectile Turret SP (6 of 6) -# Skill: Small Projectile Turret -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", container.getModifiedItemAttr("damageMultiplierBonus") * level) diff --git a/eos/effects/spatialphenomenagenerationdurationbonus.py b/eos/effects/spatialphenomenagenerationdurationbonus.py deleted file mode 100644 index b127ae30d..000000000 --- a/eos/effects/spatialphenomenagenerationdurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# spatialPhenomenaGenerationDurationBonus -# -# Used by: -# Skill: Spatial Phenomena Generation -type = "passive" - - -def handler(fit, src, context): - lvl = src.level - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Spatial Phenomena Generation"), "buffDuration", - src.getModifiedItemAttr("durationBonus") * lvl) diff --git a/eos/effects/stripminerdurationmultiplier.py b/eos/effects/stripminerdurationmultiplier.py deleted file mode 100644 index c9d0179a6..000000000 --- a/eos/effects/stripminerdurationmultiplier.py +++ /dev/null @@ -1,10 +0,0 @@ -# stripMinerDurationMultiplier -# -# Used by: -# Module: Frostline 'Omnivore' Harvester Upgrade -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Strip Miner", - "duration", module.getModifiedItemAttr("miningDurationMultiplier")) diff --git a/eos/effects/stripminermaxrangebonus.py b/eos/effects/stripminermaxrangebonus.py deleted file mode 100644 index 781f523f4..000000000 --- a/eos/effects/stripminermaxrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# stripMinerMaxRangeBonus -# -# Used by: -# Implants named like: grade Harvest (10 of 12) -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Strip Miner", - "maxRange", implant.getModifiedItemAttr("maxRangeBonus")) diff --git a/eos/effects/structuralanalysiseffect.py b/eos/effects/structuralanalysiseffect.py deleted file mode 100644 index b94832ca0..000000000 --- a/eos/effects/structuralanalysiseffect.py +++ /dev/null @@ -1,14 +0,0 @@ -# structuralAnalysisEffect -# -# Used by: -# Implants named like: Inherent Implants 'Noble' Repair Proficiency RP (6 of 6) -# Modules named like: Auxiliary Nano Pump (8 of 8) -# Implant: Imperial Navy Modified 'Noble' Implant -type = "passive" - - -def handler(fit, container, context): - penalized = "implant" not in context - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", container.getModifiedItemAttr("repairBonus"), - stackingPenalties=penalized) diff --git a/eos/effects/structureaoerofrolebonus.py b/eos/effects/structureaoerofrolebonus.py deleted file mode 100644 index 48dc00c7d..000000000 --- a/eos/effects/structureaoerofrolebonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# structureAoERoFRoleBonus -# -# Used by: -# Items from category: Structure (11 of 17) -# Structures from group: Citadel (8 of 9) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Guided Bomb Launcher", - "speed", ship.getModifiedItemAttr("structureAoERoFRoleBonus")) - for attr in ["duration", "durationTargetIlluminationBurstProjector", "durationWeaponDisruptionBurstProjector", - "durationECMJammerBurstProjector", "durationSensorDampeningBurstProjector", "capacitorNeed"]: - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Burst Projector", - attr, ship.getModifiedItemAttr("structureAoERoFRoleBonus")) diff --git a/eos/effects/structurearmorhpbonus.py b/eos/effects/structurearmorhpbonus.py deleted file mode 100644 index 9c2c727ae..000000000 --- a/eos/effects/structurearmorhpbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# structureArmorHPBonus -# -# Used by: -# Structure Modules from group: Structure Armor Reinforcer (2 of 2) -type = "passive" -runTime = "early" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("hiddenArmorHPMultiplier", src.getModifiedItemAttr("armorHpBonus"), stackingPenalties=True) diff --git a/eos/effects/structureballisticcontrolsystem.py b/eos/effects/structureballisticcontrolsystem.py deleted file mode 100644 index bce3a7a74..000000000 --- a/eos/effects/structureballisticcontrolsystem.py +++ /dev/null @@ -1,20 +0,0 @@ -# structureBallisticControlSystem -# -# Used by: -# Variations of structure module: Standup Ballistic Control System I (2 of 2) -type = "passive" - - -def handler(fit, module, context): - missileGroups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile") - - for dmgType in ("em", "kinetic", "explosive", "thermal"): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.group.name in missileGroups, - "%sDamage" % dmgType, - module.getModifiedItemAttr("missileDamageMultiplierBonus"), - stackingPenalties=True) - - launcherGroups = ("Structure XL Missile Launcher", "Structure Multirole Missile Launcher") - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name in launcherGroups, - "speed", module.getModifiedItemAttr("speedMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/structurecapacitorcapacitybonus.py b/eos/effects/structurecapacitorcapacitybonus.py deleted file mode 100644 index b0477fe60..000000000 --- a/eos/effects/structurecapacitorcapacitybonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# structureCapacitorCapacityBonus -# -# Used by: -# Structure Modules from group: Structure Capacitor Battery (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.ship.increaseItemAttr("capacitorCapacity", ship.getModifiedItemAttr("capacitorBonus")) diff --git a/eos/effects/structurecombatrigsecuritymodification.py b/eos/effects/structurecombatrigsecuritymodification.py deleted file mode 100644 index dcbc93d39..000000000 --- a/eos/effects/structurecombatrigsecuritymodification.py +++ /dev/null @@ -1,17 +0,0 @@ -runTime = "early" -type = "passive" - - -def handler(fit, module, context): - secModifier = module.getModifiedItemAttr("securityModifier") - module.multiplyItemAttr("structureRigDoomsdayDamageLossTargetBonus", secModifier) - module.multiplyItemAttr("structureRigScanResBonus", secModifier) - module.multiplyItemAttr("structureRigPDRangeBonus", secModifier) - module.multiplyItemAttr("structureRigPDCapUseBonus", secModifier) - module.multiplyItemAttr("structureRigMissileExploVeloBonus", secModifier) - module.multiplyItemAttr("structureRigMissileVelocityBonus", secModifier) - module.multiplyItemAttr("structureRigEwarOptimalBonus", secModifier) - module.multiplyItemAttr("structureRigEwarFalloffBonus", secModifier) - module.multiplyItemAttr("structureRigEwarCapUseBonus", secModifier) - module.multiplyItemAttr("structureRigMissileExplosionRadiusBonus", secModifier) - module.multiplyItemAttr("structureRigMaxTargetRangeBonus", secModifier) diff --git a/eos/effects/structureenergyneutralizerfalloff.py b/eos/effects/structureenergyneutralizerfalloff.py deleted file mode 100644 index 284ed616e..000000000 --- a/eos/effects/structureenergyneutralizerfalloff.py +++ /dev/null @@ -1,22 +0,0 @@ -# structureEnergyNeutralizerFalloff -# -# Used by: -# Structure Modules from group: Structure Energy Neutralizer (5 of 5) -from eos.const import FittingModuleState -from eos.modifiedAttributeDict import ModifiedAttributeDict - -type = "active", "projected" - - -def handler(fit, src, context, **kwargs): - amount = 0 - if "projected" in context: - if (hasattr(src, "state") and src.state >= FittingModuleState.ACTIVE) or hasattr(src, "amountActive"): - amount = src.getModifiedItemAttr("energyNeutralizerAmount") - - if 'effect' in kwargs: - amount *= ModifiedAttributeDict.getResistance(fit, kwargs['effect']) - - time = src.getModifiedItemAttr("duration") - - fit.addDrain(src, time, amount, 0) \ No newline at end of file diff --git a/eos/effects/structurefullpowerstatehitpointmodifier.py b/eos/effects/structurefullpowerstatehitpointmodifier.py deleted file mode 100644 index 5ae185d64..000000000 --- a/eos/effects/structurefullpowerstatehitpointmodifier.py +++ /dev/null @@ -1,10 +0,0 @@ -# structureFullPowerStateHitpointModifier -# -# Used by: -# Items from category: Structure (17 of 17) -type = "passive" - - -def handler(fit, src, context): - fit.ship.multiplyItemAttr("shieldCapacity", src.getModifiedItemAttr("structureFullPowerStateHitpointMultiplier") or 0) - fit.ship.multiplyItemAttr("armorHP", src.getModifiedItemAttr("structureFullPowerStateHitpointMultiplier") or 0) diff --git a/eos/effects/structurehiddenarmorhpmultiplier.py b/eos/effects/structurehiddenarmorhpmultiplier.py deleted file mode 100644 index af1b39be3..000000000 --- a/eos/effects/structurehiddenarmorhpmultiplier.py +++ /dev/null @@ -1,9 +0,0 @@ -# structureHiddenArmorHPMultiplier -# -# Used by: -# Items from category: Structure (17 of 17) -type = "passive" - - -def handler(fit, src, context): - fit.ship.multiplyItemAttr("armorHP", src.getModifiedItemAttr("hiddenArmorHPMultiplier") or 0) diff --git a/eos/effects/structurehiddenmissiledamagemultiplier.py b/eos/effects/structurehiddenmissiledamagemultiplier.py deleted file mode 100644 index 61abbf2f4..000000000 --- a/eos/effects/structurehiddenmissiledamagemultiplier.py +++ /dev/null @@ -1,13 +0,0 @@ -# structureHiddenMissileDamageMultiplier -# -# Used by: -# Items from category: Structure (14 of 17) -type = "passive" - - -def handler(fit, src, context): - groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile") - for dmgType in ("em", "kinetic", "explosive", "thermal"): - fit.modules.filteredChargeMultiply(lambda mod: mod.item.group.name in groups, - "%sDamage" % dmgType, - src.getModifiedItemAttr("hiddenMissileDamageMultiplier")) diff --git a/eos/effects/structurehpbonusaddpassive.py b/eos/effects/structurehpbonusaddpassive.py deleted file mode 100644 index c2b7db0ed..000000000 --- a/eos/effects/structurehpbonusaddpassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# structureHPBonusAddPassive -# -# Used by: -# Subsystems named like: Defensive Covert Reconfiguration (4 of 4) -# Subsystem: Loki Defensive - Adaptive Defense Node -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("hp", module.getModifiedItemAttr("structureHPBonusAdd") or 0) diff --git a/eos/effects/structurehpmultiply.py b/eos/effects/structurehpmultiply.py deleted file mode 100644 index 0b7618e97..000000000 --- a/eos/effects/structurehpmultiply.py +++ /dev/null @@ -1,10 +0,0 @@ -# structureHPMultiply -# -# Used by: -# Modules from group: Nanofiber Internal Structure (7 of 7) -# Modules from group: Reinforced Bulkhead (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("hp", module.getModifiedItemAttr("structureHPMultiplier")) diff --git a/eos/effects/structurehpmultiplypassive.py b/eos/effects/structurehpmultiplypassive.py deleted file mode 100644 index 543cb488a..000000000 --- a/eos/effects/structurehpmultiplypassive.py +++ /dev/null @@ -1,9 +0,0 @@ -# structureHPMultiplyPassive -# -# Used by: -# Modules from group: Expanded Cargohold (7 of 7) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("hp", module.getModifiedItemAttr("structureHPMultiplier")) diff --git a/eos/effects/structuremissileguidanceenhancer.py b/eos/effects/structuremissileguidanceenhancer.py deleted file mode 100644 index 59686c5e1..000000000 --- a/eos/effects/structuremissileguidanceenhancer.py +++ /dev/null @@ -1,18 +0,0 @@ -# structureMissileGuidanceEnhancer -# -# Used by: -# Variations of structure module: Standup Missile Guidance Enhancer I (2 of 2) -type = "passive" - - -def handler(fit, container, context): - missileGroups = ("Structure Anti-Capital Missile", "Structure Anti-Subcapital Missile") - for srcAttr, tgtAttr in ( - ("aoeCloudSizeBonus", "aoeCloudSize"), - ("aoeVelocityBonus", "aoeVelocity"), - ("missileVelocityBonus", "maxVelocity"), - ("explosionDelayBonus", "explosionDelay"), - ): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in missileGroups, - tgtAttr, container.getModifiedItemAttr(srcAttr), - stackingPenalties=True) diff --git a/eos/effects/structuremodifypowerrechargerate.py b/eos/effects/structuremodifypowerrechargerate.py deleted file mode 100644 index f5977b6fe..000000000 --- a/eos/effects/structuremodifypowerrechargerate.py +++ /dev/null @@ -1,9 +0,0 @@ -# structureModifyPowerRechargeRate -# -# Used by: -# Structure Modules from group: Structure Capacitor Power Relay (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.ship.multiplyItemAttr("rechargeRate", module.getModifiedItemAttr("capacitorRechargeRateMultiplier")) diff --git a/eos/effects/structuremoduleeffectecm.py b/eos/effects/structuremoduleeffectecm.py deleted file mode 100644 index a2725fb5e..000000000 --- a/eos/effects/structuremoduleeffectecm.py +++ /dev/null @@ -1,13 +0,0 @@ -# structureModuleEffectECM -# -# Used by: -# Structure Modules from group: Structure ECM Battery (3 of 3) -type = "projected", "active" - - -def handler(fit, module, context): - if "projected" in context: - # jam formula: 1 - (1- (jammer str/ship str))^(# of jam mods with same str)) - strModifier = 1 - module.getModifiedItemAttr("scan{0}StrengthBonus".format(fit.scanType)) / fit.scanStrength - - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/structuremoduleeffectremotesensordampener.py b/eos/effects/structuremoduleeffectremotesensordampener.py deleted file mode 100644 index 23cd49378..000000000 --- a/eos/effects/structuremoduleeffectremotesensordampener.py +++ /dev/null @@ -1,17 +0,0 @@ -# structureModuleEffectRemoteSensorDampener -# -# Used by: -# Variations of structure module: Standup Remote Sensor Dampener I (2 of 2) - -type = "projected", "active" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"), - stackingPenalties=True, *args, **kwargs) - - fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/structuremoduleeffectstasiswebifier.py b/eos/effects/structuremoduleeffectstasiswebifier.py deleted file mode 100644 index 30040db35..000000000 --- a/eos/effects/structuremoduleeffectstasiswebifier.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureModuleEffectStasisWebifier -# -# Used by: -# Structure Modules from group: Structure Stasis Webifier (2 of 2) -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - if "projected" not in context: - return - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/structuremoduleeffecttargetpainter.py b/eos/effects/structuremoduleeffecttargetpainter.py deleted file mode 100644 index d89abe4b3..000000000 --- a/eos/effects/structuremoduleeffecttargetpainter.py +++ /dev/null @@ -1,11 +0,0 @@ -# structureModuleEffectTargetPainter -# -# Used by: -# Variations of structure module: Standup Target Painter I (2 of 2) -type = "projected", "active" - - -def handler(fit, container, context, *args, **kwargs): - if "projected" in context: - fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/structuremoduleeffectweapondisruption.py b/eos/effects/structuremoduleeffectweapondisruption.py deleted file mode 100644 index ff3f705ab..000000000 --- a/eos/effects/structuremoduleeffectweapondisruption.py +++ /dev/null @@ -1,29 +0,0 @@ -# structureModuleEffectWeaponDisruption -# -# Used by: -# Variations of structure module: Standup Weapon Disruptor I (2 of 2) - -type = "active", "projected" - - -def handler(fit, module, context, *args, **kwargs): - 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, module.getModifiedItemAttr(srcAttr), - stackingPenalties=True, *args, **kwargs) - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "maxRange", module.getModifiedItemAttr("maxRangeBonus"), - stackingPenalties=True, *args, **kwargs) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", module.getModifiedItemAttr("falloffBonus"), - stackingPenalties=True, *args, **kwargs) diff --git a/eos/effects/structurerepair.py b/eos/effects/structurerepair.py deleted file mode 100644 index 40a88a261..000000000 --- a/eos/effects/structurerepair.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRepair -# -# Used by: -# Modules from group: Hull Repair Unit (25 of 25) -type = "active" -runTime = "late" - - -def handler(fit, module, context): - amount = module.getModifiedItemAttr("structureDamageAmount") - speed = module.getModifiedItemAttr("duration") / 1000.0 - fit.extraAttributes.increase("hullRepair", amount / speed) diff --git a/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py b/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py deleted file mode 100644 index 11045a7c2..000000000 --- a/eos/effects/structurerigaoevelocitybonussingletargetmissiles.py +++ /dev/null @@ -1,13 +0,0 @@ -# structureRigAoeVelocityBonusSingleTargetMissiles -# -# Used by: -# Structure Modules named like: Standup Set Missile (6 of 8) -type = "passive" - - -def handler(fit, src, context): - groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile") - - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, - "aoeVelocity", src.getModifiedItemAttr("structureRigMissileExploVeloBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigdoomsdaydamageloss.py b/eos/effects/structurerigdoomsdaydamageloss.py deleted file mode 100644 index f81301110..000000000 --- a/eos/effects/structurerigdoomsdaydamageloss.py +++ /dev/null @@ -1,11 +0,0 @@ -# structureRigDoomsdayDamageLoss -# -# Used by: -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Structure Doomsday Weapon", - "lightningWeaponDamageLossTarget", - src.getModifiedItemAttr("structureRigDoomsdayDamageLossTargetBonus")) diff --git a/eos/effects/structurerigdoomsdaytargetamountbonus.py b/eos/effects/structurerigdoomsdaytargetamountbonus.py deleted file mode 100644 index ece92271a..000000000 --- a/eos/effects/structurerigdoomsdaytargetamountbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# structureRigDoomsdayTargetAmountBonus -# -# Used by: -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.group.name == "Structure Doomsday Weapon", - "lightningWeaponTargetAmount", - src.getModifiedItemAttr("structureRigDoomsdayTargetAmountBonus")) diff --git a/eos/effects/structurerigewcapacitorneed.py b/eos/effects/structurerigewcapacitorneed.py deleted file mode 100644 index caaacb6ea..000000000 --- a/eos/effects/structurerigewcapacitorneed.py +++ /dev/null @@ -1,13 +0,0 @@ -# structureRigEWCapacitorNeed -# -# Used by: -# Structure Modules from group: Structure Combat Rig M - EW Cap Reduction (2 of 2) -# Structure Modules named like: Standup Set EW (4 of 4) -type = "passive" - - -def handler(fit, src, context): - groups = ("Structure ECM Battery", "Structure Disruption Battery") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigewmaxrangefalloff.py b/eos/effects/structurerigewmaxrangefalloff.py deleted file mode 100644 index 679e4c29e..000000000 --- a/eos/effects/structurerigewmaxrangefalloff.py +++ /dev/null @@ -1,22 +0,0 @@ -# structureRigEWMaxRangeFalloff -# -# Used by: -# Structure Modules from group: Structure Combat Rig M - EW projection (2 of 2) -# Structure Modules named like: Standup Set EW (4 of 4) -type = "passive" - - -def handler(fit, src, context): - groups = ("Structure ECM Battery", "Structure Disruption Battery") - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "falloff", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), - stackingPenalties=True) - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"), - stackingPenalties=True) - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigexplosionradiusbonusaoemissiles.py b/eos/effects/structurerigexplosionradiusbonusaoemissiles.py deleted file mode 100644 index a6fedf168..000000000 --- a/eos/effects/structurerigexplosionradiusbonusaoemissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigExplosionRadiusBonusAoEMissiles -# -# Used by: -# Structure Modules from group: Structure Combat Rig L - AoE Launcher Application and Projection (2 of 2) -# Structure Modules from group: Structure Combat Rig XL - Missile and AoE Missile (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Structure Guided Bomb", - "aoeCloudSize", src.getModifiedItemAttr("structureRigMissileExplosionRadiusBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigmaxtargetrange.py b/eos/effects/structurerigmaxtargetrange.py deleted file mode 100644 index 52ac17bc8..000000000 --- a/eos/effects/structurerigmaxtargetrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# structureRigMaxTargetRange -# -# Used by: -# Structure Modules from group: Structure Combat Rig L - Max Targets and Sensor Boosting (2 of 2) -# Structure Modules from group: Structure Combat Rig M - Boosted Sensors (2 of 2) -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("structureRigMaxTargetRangeBonus")) diff --git a/eos/effects/structurerigmaxtargets.py b/eos/effects/structurerigmaxtargets.py deleted file mode 100644 index 452af580d..000000000 --- a/eos/effects/structurerigmaxtargets.py +++ /dev/null @@ -1,10 +0,0 @@ -# structureRigMaxTargets -# -# Used by: -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -# Structure Modules named like: Standup Set Target (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.extraAttributes.increase("maxTargetsLockedFromSkills", src.getModifiedItemAttr("structureRigMaxTargetBonus")) diff --git a/eos/effects/structurerigneutralizercapacitorneed.py b/eos/effects/structurerigneutralizercapacitorneed.py deleted file mode 100644 index 89a2ffec0..000000000 --- a/eos/effects/structurerigneutralizercapacitorneed.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigNeutralizerCapacitorNeed -# -# Used by: -# Structure Modules from group: Structure Combat Rig XL - Energy Neutralizer and EW (2 of 2) -# Structure Modules named like: Standup Set Energy Neutralizer (4 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer", - "capacitorNeed", src.getModifiedItemAttr("structureRigEwarCapUseBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py b/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py deleted file mode 100644 index 55a835155..000000000 --- a/eos/effects/structurerigneutralizermaxrangefalloffeffectiveness.py +++ /dev/null @@ -1,16 +0,0 @@ -# structureRigNeutralizerMaxRangeFalloffEffectiveness -# -# Used by: -# Structure Modules from group: Structure Combat Rig XL - Energy Neutralizer and EW (2 of 2) -# Structure Modules named like: Standup Set Energy Neutralizer (4 of 6) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer", - "maxRange", src.getModifiedItemAttr("structureRigEwarOptimalBonus"), - stackingPenalties=True) - - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Energy Neutralizer", - "falloffEffectiveness", src.getModifiedItemAttr("structureRigEwarFalloffBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigpdbcapacitorneed.py b/eos/effects/structurerigpdbcapacitorneed.py deleted file mode 100644 index eb1ee6167..000000000 --- a/eos/effects/structurerigpdbcapacitorneed.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigPDBCapacitorNeed -# -# Used by: -# Structure Modules from group: Structure Combat Rig L - Point Defense Battery Application and Projection (2 of 2) -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Area Denial Module", - "capacitorNeed", src.getModifiedItemAttr("structureRigPDCapUseBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigpdbmaxrange.py b/eos/effects/structurerigpdbmaxrange.py deleted file mode 100644 index 5373add73..000000000 --- a/eos/effects/structurerigpdbmaxrange.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigPDBmaxRange -# -# Used by: -# Structure Modules from group: Structure Combat Rig L - Point Defense Battery Application and Projection (2 of 2) -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Structure Area Denial Module", - "empFieldRange", src.getModifiedItemAttr("structureRigPDRangeBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigsensorresolution.py b/eos/effects/structurerigsensorresolution.py deleted file mode 100644 index 26a8ebd58..000000000 --- a/eos/effects/structurerigsensorresolution.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigSensorResolution -# -# Used by: -# Structure Modules from group: Structure Combat Rig L - Max Targets and Sensor Boosting (2 of 2) -# Structure Modules from group: Structure Combat Rig M - Boosted Sensors (2 of 2) -# Structure Modules from group: Structure Combat Rig XL - Doomsday and Targeting (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("structureRigScanResBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigvelocitybonusaoemissiles.py b/eos/effects/structurerigvelocitybonusaoemissiles.py deleted file mode 100644 index 38985d031..000000000 --- a/eos/effects/structurerigvelocitybonusaoemissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigVelocityBonusAoeMissiles -# -# Used by: -# Structure Modules from group: Structure Combat Rig L - AoE Launcher Application and Projection (2 of 2) -# Structure Modules from group: Structure Combat Rig XL - Missile and AoE Missile (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name == "Structure Guided Bomb", - "maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurerigvelocitybonussingletargetmissiles.py b/eos/effects/structurerigvelocitybonussingletargetmissiles.py deleted file mode 100644 index 51103c3a8..000000000 --- a/eos/effects/structurerigvelocitybonussingletargetmissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# structureRigVelocityBonusSingleTargetMissiles -# -# Used by: -# Structure Modules named like: Standup Set Missile (6 of 8) -type = "passive" - - -def handler(fit, src, context): - groups = ("Structure Anti-Subcapital Missile", "Structure Anti-Capital Missile") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.group.name in groups, - "maxVelocity", src.getModifiedItemAttr("structureRigMissileVelocityBonus"), - stackingPenalties=True) diff --git a/eos/effects/structurestealthemitterarraysigdecrease.py b/eos/effects/structurestealthemitterarraysigdecrease.py deleted file mode 100644 index c7e19707f..000000000 --- a/eos/effects/structurestealthemitterarraysigdecrease.py +++ /dev/null @@ -1,10 +0,0 @@ -# structureStealthEmitterArraySigDecrease -# -# Used by: -# Implants named like: X Instinct Booster (4 of 4) -# Implants named like: grade Halo (15 of 18) -type = "passive" - - -def handler(fit, implant, context): - fit.ship.boostItemAttr("signatureRadius", implant.getModifiedItemAttr("signatureRadiusBonus")) diff --git a/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py b/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py deleted file mode 100644 index 4b342e0ec..000000000 --- a/eos/effects/structurewarpscrambleblockmwdwithnpceffect.py +++ /dev/null @@ -1,20 +0,0 @@ -# structureWarpScrambleBlockMWDWithNPCEffect -# -# Used by: -# Structure Modules from group: Structure Warp Scrambler (2 of 2) -from eos.const import FittingModuleState - -# Not used by any item -runTime = "early" -type = "projected", "active" - - -def handler(fit, module, context): - if "projected" in context: - fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) - if module.charge is not None and module.charge.ID == 47336: - for mod in fit.modules: - if not mod.isEmpty and mod.item.requiresSkill("High Speed Maneuvering") and mod.state > FittingModuleState.ONLINE: - mod.state = FittingModuleState.ONLINE - if not mod.isEmpty and mod.item.requiresSkill("Micro Jump Drive Operation") and mod.state > FittingModuleState.ONLINE: - mod.state = FittingModuleState.ONLINE diff --git a/eos/effects/subsystembonusamarrcore2energydestabilizeramount.py b/eos/effects/subsystembonusamarrcore2energydestabilizeramount.py deleted file mode 100644 index e9cd100c1..000000000 --- a/eos/effects/subsystembonusamarrcore2energydestabilizeramount.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrCore2EnergyDestabilizerAmount -# -# Used by: -# Subsystem: Legion Core - Energy Parasitic Complex -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Neutralizer", "energyNeutralizerAmount", - src.getModifiedItemAttr("subsystemBonusAmarrCore2"), skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcore2energyresistance.py b/eos/effects/subsystembonusamarrcore2energyresistance.py deleted file mode 100644 index a4f8215f8..000000000 --- a/eos/effects/subsystembonusamarrcore2energyresistance.py +++ /dev/null @@ -1,9 +0,0 @@ -# subsystemBonusAmarrCore2EnergyResistance -# -# Used by: -# Subsystem: Legion Core - Augmented Antimatter Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("energyWarfareResistance", src.getModifiedItemAttr("subsystemBonusAmarrCore2"), skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcore2energyvampireamount.py b/eos/effects/subsystembonusamarrcore2energyvampireamount.py deleted file mode 100644 index c3597aead..000000000 --- a/eos/effects/subsystembonusamarrcore2energyvampireamount.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrCore2EnergyVampireAmount -# -# Used by: -# Subsystem: Legion Core - Energy Parasitic Complex -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Nosferatu", "powerTransferAmount", - src.getModifiedItemAttr("subsystemBonusAmarrCore2"), skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcore2maxtargetingrange.py b/eos/effects/subsystembonusamarrcore2maxtargetingrange.py deleted file mode 100644 index 855c5f401..000000000 --- a/eos/effects/subsystembonusamarrcore2maxtargetingrange.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrCore2MaxTargetingRange -# -# Used by: -# Subsystem: Legion Core - Dissolution Sequencer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("maxTargetRange", src.getModifiedItemAttr("subsystemBonusAmarrCore2"), - skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcore3energywarheatbonus.py b/eos/effects/subsystembonusamarrcore3energywarheatbonus.py deleted file mode 100644 index 0d74c77e5..000000000 --- a/eos/effects/subsystembonusamarrcore3energywarheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrCore3EnergyWarHeatBonus -# -# Used by: -# Subsystem: Legion Core - Energy Parasitic Complex -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Energy Nosferatu", "Energy Neutralizer"), "overloadSelfDurationBonus", - src.getModifiedItemAttr("subsystemBonusAmarrCore3"), skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcore3scanresolution.py b/eos/effects/subsystembonusamarrcore3scanresolution.py deleted file mode 100644 index 2374304e5..000000000 --- a/eos/effects/subsystembonusamarrcore3scanresolution.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrCore3ScanResolution -# -# Used by: -# Subsystem: Legion Core - Dissolution Sequencer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("subsystemBonusAmarrCore3"), - skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcorecapacitorcapacity.py b/eos/effects/subsystembonusamarrcorecapacitorcapacity.py deleted file mode 100644 index 373d62290..000000000 --- a/eos/effects/subsystembonusamarrcorecapacitorcapacity.py +++ /dev/null @@ -1,9 +0,0 @@ -# subsystemBonusAmarrCoreCapacitorCapacity -# -# Used by: -# Subsystem: Legion Core - Augmented Antimatter Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("capacitorCapacity", src.getModifiedItemAttr("subsystemBonusAmarrCore"), skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrcorescanstrengthradar.py b/eos/effects/subsystembonusamarrcorescanstrengthradar.py deleted file mode 100644 index 8c0c2bd82..000000000 --- a/eos/effects/subsystembonusamarrcorescanstrengthradar.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrCoreScanStrengthRADAR -# -# Used by: -# Subsystem: Legion Core - Dissolution Sequencer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanRadarStrength", src.getModifiedItemAttr("subsystemBonusAmarrCore"), - skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarrdefensive2hardenerheat.py b/eos/effects/subsystembonusamarrdefensive2hardenerheat.py deleted file mode 100644 index 20459415a..000000000 --- a/eos/effects/subsystembonusamarrdefensive2hardenerheat.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusAmarrDefensive2HardenerHeat -# -# Used by: -# Subsystem: Legion Defensive - Augmented Plating -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadSelfDurationBonus", - src.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), skill="Amarr Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadHardeningBonus", - src.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensive2scanprobestrength.py b/eos/effects/subsystembonusamarrdefensive2scanprobestrength.py deleted file mode 100644 index a7f2c9f58..000000000 --- a/eos/effects/subsystembonusamarrdefensive2scanprobestrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# subSystemBonusAmarrDefensive2ScanProbeStrength -# -# Used by: -# Subsystem: Legion Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseSensorStrength", src.getModifiedItemAttr("subsystemBonusAmarrDefensive2"), - skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensive3armorrepheat.py b/eos/effects/subsystembonusamarrdefensive3armorrepheat.py deleted file mode 100644 index e4c0bf66e..000000000 --- a/eos/effects/subsystembonusamarrdefensive3armorrepheat.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemBonusAmarrDefensive3ArmorRepHeat -# -# Used by: -# Subsystem: Legion Defensive - Covert Reconfiguration -# Subsystem: Legion Defensive - Nanobot Injector -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "overloadSelfDurationBonus", src.getModifiedItemAttr("subsystemBonusAmarrDefensive3"), - skill="Amarr Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "overloadArmorDamageAmount", src.getModifiedItemAttr("subsystemBonusAmarrDefensive3"), - skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensivearmorhp.py b/eos/effects/subsystembonusamarrdefensivearmorhp.py deleted file mode 100644 index d28928667..000000000 --- a/eos/effects/subsystembonusamarrdefensivearmorhp.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrDefensiveArmorHP -# -# Used by: -# Subsystem: Legion Defensive - Augmented Plating -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), - skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py b/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py deleted file mode 100644 index 0ead0d3d7..000000000 --- a/eos/effects/subsystembonusamarrdefensivearmorrepairamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusAmarrDefensiveArmorRepairAmount -# -# Used by: -# Subsystem: Legion Defensive - Covert Reconfiguration -# Subsystem: Legion Defensive - Nanobot Injector -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusAmarrDefensive"), - skill="Amarr Defensive Systems") diff --git a/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py b/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py deleted file mode 100644 index 081431376..000000000 --- a/eos/effects/subsystembonusamarrengineeringheatdamagereduction.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrEngineeringHeatDamageReduction -# -# Used by: -# Subsystem: Legion Core - Energy Parasitic Complex -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusAmarrCore"), - skill="Amarr Core Systems") diff --git a/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py b/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py deleted file mode 100644 index 4062932dd..000000000 --- a/eos/effects/subsystembonusamarroffensive2energyweaponcapacitorneed.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrOffensive2EnergyWeaponCapacitorNeed -# -# Used by: -# Subsystem: Legion Offensive - Liquid Crystal Magnifiers -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "capacitorNeed", module.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), - skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive2missiledamage.py b/eos/effects/subsystembonusamarroffensive2missiledamage.py deleted file mode 100644 index ac51a389f..000000000 --- a/eos/effects/subsystembonusamarroffensive2missiledamage.py +++ /dev/null @@ -1,16 +0,0 @@ -# subsystemBonusAmarrOffensive2MissileDamage -# -# Used by: -# Subsystem: Legion Offensive - Assault Optimization -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", src.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "kineticDamage", src.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "emDamage", src.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") - fit.modules.filteredChargeBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "thermalDamage", src.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive2remotearmorrepaircapuse.py b/eos/effects/subsystembonusamarroffensive2remotearmorrepaircapuse.py deleted file mode 100644 index 39804e030..000000000 --- a/eos/effects/subsystembonusamarroffensive2remotearmorrepaircapuse.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrOffensive2RemoteArmorRepairCapUse -# -# Used by: -# Subsystem: Legion Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("subsystemBonusAmarrOffensive2"), skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive3dronedamagehp.py b/eos/effects/subsystembonusamarroffensive3dronedamagehp.py deleted file mode 100644 index 26618a998..000000000 --- a/eos/effects/subsystembonusamarroffensive3dronedamagehp.py +++ /dev/null @@ -1,16 +0,0 @@ -# subsystemBonusAmarrOffensive3DroneDamageHP -# -# Used by: -# Subsystem: Legion Offensive - Assault Optimization -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "hp", src.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "armorHP", src.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "shieldCapacity", src.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "damageMultiplier", src.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py b/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py deleted file mode 100644 index 7d001910c..000000000 --- a/eos/effects/subsystembonusamarroffensive3energyweaponmaxrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrOffensive3EnergyWeaponMaxRange -# -# Used by: -# Subsystem: Legion Offensive - Liquid Crystal Magnifiers -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "maxRange", module.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), - skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensive3remotearmorrepairheat.py b/eos/effects/subsystembonusamarroffensive3remotearmorrepairheat.py deleted file mode 100644 index d7e603aab..000000000 --- a/eos/effects/subsystembonusamarroffensive3remotearmorrepairheat.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrOffensive3RemoteArmorRepairHeat -# -# Used by: -# Subsystem: Legion Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "overloadSelfDurationBonus", - src.getModifiedItemAttr("subsystemBonusAmarrOffensive3"), skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensivecommandbursts.py b/eos/effects/subsystembonusamarroffensivecommandbursts.py deleted file mode 100644 index 8133970bc..000000000 --- a/eos/effects/subsystembonusamarroffensivecommandbursts.py +++ /dev/null @@ -1,40 +0,0 @@ -# subSystemBonusAmarrOffensiveCommandBursts -# -# Used by: -# Subsystem: Legion Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py b/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py deleted file mode 100644 index 3af29dfee..000000000 --- a/eos/effects/subsystembonusamarroffensiveenergyweapondamagemultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrOffensiveEnergyWeaponDamageMultiplier -# -# Used by: -# Subsystem: Legion Offensive - Liquid Crystal Magnifiers -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusAmarrOffensive"), - skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarroffensivemissilelauncherrof.py b/eos/effects/subsystembonusamarroffensivemissilelauncherrof.py deleted file mode 100644 index 7eb49ec46..000000000 --- a/eos/effects/subsystembonusamarroffensivemissilelauncherrof.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrOffensiveMissileLauncherROF -# -# Used by: -# Subsystem: Legion Offensive - Assault Optimization -type = "passive" - - -def handler(fit, src, context): - groups = ("Missile Launcher Heavy", "Missile Launcher Rapid Light", "Missile Launcher Heavy Assault") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", src.getModifiedItemAttr("subsystemBonusAmarrOffensive"), skill="Amarr Offensive Systems") diff --git a/eos/effects/subsystembonusamarrpropulsion2agility.py b/eos/effects/subsystembonusamarrpropulsion2agility.py deleted file mode 100644 index 426d8a119..000000000 --- a/eos/effects/subsystembonusamarrpropulsion2agility.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrPropulsion2Agility -# -# Used by: -# Subsystem: Legion Propulsion - Intercalated Nanofibers -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("agility", src.getModifiedItemAttr("subsystemBonusAmarrPropulsion2"), - skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsion2mwdpenalty.py b/eos/effects/subsystembonusamarrpropulsion2mwdpenalty.py deleted file mode 100644 index ceb76ccea..000000000 --- a/eos/effects/subsystembonusamarrpropulsion2mwdpenalty.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrPropulsion2MWDPenalty -# -# Used by: -# Subsystem: Legion Propulsion - Wake Limiter -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", src.getModifiedItemAttr("subsystemBonusAmarrPropulsion2"), - skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsion2warpspeed.py b/eos/effects/subsystembonusamarrpropulsion2warpspeed.py deleted file mode 100644 index bc59ac952..000000000 --- a/eos/effects/subsystembonusamarrpropulsion2warpspeed.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrPropulsion2WarpSpeed -# -# Used by: -# Subsystem: Legion Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("subsystemBonusAmarrPropulsion2"), - skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py b/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py deleted file mode 100644 index 994733a04..000000000 --- a/eos/effects/subsystembonusamarrpropulsionafterburnerspeedfactor.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusAmarrPropulsionAfterburnerSpeedFactor -# -# Used by: -# Subsystem: Legion Propulsion - Wake Limiter -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), - skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py b/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py deleted file mode 100644 index 4b0812554..000000000 --- a/eos/effects/subsystembonusamarrpropulsionmaxvelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusAmarrPropulsionMaxVelocity -# -# Used by: -# Subsystem: Legion Propulsion - Intercalated Nanofibers -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), - skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonusamarrpropulsionwarpcapacitor.py b/eos/effects/subsystembonusamarrpropulsionwarpcapacitor.py deleted file mode 100644 index 76c076a0f..000000000 --- a/eos/effects/subsystembonusamarrpropulsionwarpcapacitor.py +++ /dev/null @@ -1,9 +0,0 @@ -# subsystemBonusAmarrPropulsionWarpCapacitor -# -# Used by: -# Subsystem: Legion Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpCapacitorNeed", src.getModifiedItemAttr("subsystemBonusAmarrPropulsion"), skill="Amarr Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaricore2ecmstrengthrange.py b/eos/effects/subsystembonuscaldaricore2ecmstrengthrange.py deleted file mode 100644 index afa67dbaa..000000000 --- a/eos/effects/subsystembonuscaldaricore2ecmstrengthrange.py +++ /dev/null @@ -1,18 +0,0 @@ -# subsystemBonusCaldariCore2ECMStrengthRange -# -# Used by: -# Subsystem: Tengu Core - Obfuscation Manifold -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanLadarStrengthBonus", - src.getModifiedItemAttr("subsystemBonusCaldariCore2"), skill="Caldari Core Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanRadarStrengthBonus", - src.getModifiedItemAttr("subsystemBonusCaldariCore2"), skill="Caldari Core Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "maxRange", - src.getModifiedItemAttr("subsystemBonusCaldariCore2"), skill="Caldari Core Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanGravimetricStrengthBonus", - src.getModifiedItemAttr("subsystemBonusCaldariCore2"), skill="Caldari Core Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "scanMagnetometricStrengthBonus", - src.getModifiedItemAttr("subsystemBonusCaldariCore2"), skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldaricore2energyresistance.py b/eos/effects/subsystembonuscaldaricore2energyresistance.py deleted file mode 100644 index 9a2d0c415..000000000 --- a/eos/effects/subsystembonuscaldaricore2energyresistance.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariCore2EnergyResistance -# -# Used by: -# Subsystem: Tengu Core - Augmented Graviton Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("energyWarfareResistance", src.getModifiedItemAttr("subsystemBonusCaldariCore2"), - skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldaricore2maxtargetingrange.py b/eos/effects/subsystembonuscaldaricore2maxtargetingrange.py deleted file mode 100644 index 4aa3ad96c..000000000 --- a/eos/effects/subsystembonuscaldaricore2maxtargetingrange.py +++ /dev/null @@ -1,9 +0,0 @@ -# subsystemBonusCaldariCore2MaxTargetingRange -# -# Used by: -# Subsystem: Tengu Core - Electronic Efficiency Gate -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("maxTargetRange", src.getModifiedItemAttr("subsystemBonusCaldariCore2"), skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldaricore3ecmheatbonus.py b/eos/effects/subsystembonuscaldaricore3ecmheatbonus.py deleted file mode 100644 index c17c23ea2..000000000 --- a/eos/effects/subsystembonuscaldaricore3ecmheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariCore3ECMHeatBonus -# -# Used by: -# Subsystem: Tengu Core - Obfuscation Manifold -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "ECM", "overloadECMStrengthBonus", - src.getModifiedItemAttr("subsystemBonusCaldariCore3"), skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldaricorecapacitorcapacity.py b/eos/effects/subsystembonuscaldaricorecapacitorcapacity.py deleted file mode 100644 index b3895bbec..000000000 --- a/eos/effects/subsystembonuscaldaricorecapacitorcapacity.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariCoreCapacitorCapacity -# -# Used by: -# Subsystem: Tengu Core - Augmented Graviton Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("capacitorCapacity", src.getModifiedItemAttr("subsystemBonusCaldariCore"), - skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldaricorescanstrengthgravimetric.py b/eos/effects/subsystembonuscaldaricorescanstrengthgravimetric.py deleted file mode 100644 index b21cd5754..000000000 --- a/eos/effects/subsystembonuscaldaricorescanstrengthgravimetric.py +++ /dev/null @@ -1,9 +0,0 @@ -# subsystemBonusCaldariCoreScanStrengthGravimetric -# -# Used by: -# Subsystem: Tengu Core - Electronic Efficiency Gate -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanGravimetricStrength", src.getModifiedItemAttr("subsystemBonusCaldariCore"), skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldaridefensive2hardenerheat.py b/eos/effects/subsystembonuscaldaridefensive2hardenerheat.py deleted file mode 100644 index 259f761eb..000000000 --- a/eos/effects/subsystembonuscaldaridefensive2hardenerheat.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariDefensive2HardenerHeat -# -# Used by: -# Subsystem: Tengu Defensive - Supplemental Screening -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Tactical Shield Manipulation"), - "overloadHardeningBonus", src.getModifiedItemAttr("subsystemBonusCaldariDefensive2"), - skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensive2scanprobestrength.py b/eos/effects/subsystembonuscaldaridefensive2scanprobestrength.py deleted file mode 100644 index 828d383a2..000000000 --- a/eos/effects/subsystembonuscaldaridefensive2scanprobestrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# subSystemBonusCaldariDefensive2ScanProbeStrength -# -# Used by: -# Subsystem: Tengu Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), - "baseSensorStrength", src.getModifiedItemAttr("subsystemBonusCaldariDefensive2"), - skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensive3shieldboostheat.py b/eos/effects/subsystembonuscaldaridefensive3shieldboostheat.py deleted file mode 100644 index a18f076f1..000000000 --- a/eos/effects/subsystembonuscaldaridefensive3shieldboostheat.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemBonusCaldariDefensive3ShieldBoostHeat -# -# Used by: -# Subsystem: Tengu Defensive - Amplification Node -# Subsystem: Tengu Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "overloadShieldBonus", src.getModifiedItemAttr("subsystemBonusCaldariDefensive3"), - skill="Caldari Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "overloadSelfDurationBonus", src.getModifiedItemAttr("subsystemBonusCaldariDefensive3"), - skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py b/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py deleted file mode 100644 index ec7bff89c..000000000 --- a/eos/effects/subsystembonuscaldaridefensiveshieldboostamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusCaldariDefensiveShieldBoostAmount -# -# Used by: -# Subsystem: Tengu Defensive - Amplification Node -# Subsystem: Tengu Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), - skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldaridefensiveshieldhp.py b/eos/effects/subsystembonuscaldaridefensiveshieldhp.py deleted file mode 100644 index 50ce1043f..000000000 --- a/eos/effects/subsystembonuscaldaridefensiveshieldhp.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariDefensiveShieldHP -# -# Used by: -# Subsystem: Tengu Defensive - Supplemental Screening -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("shieldCapacity", module.getModifiedItemAttr("subsystemBonusCaldariDefensive"), - skill="Caldari Defensive Systems") diff --git a/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py b/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py deleted file mode 100644 index 187643ef3..000000000 --- a/eos/effects/subsystembonuscaldariengineeringheatdamagereduction.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariEngineeringHeatDamageReduction -# -# Used by: -# Subsystem: Tengu Core - Obfuscation Manifold -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusCaldariCore"), - skill="Caldari Core Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive1launcherrof.py b/eos/effects/subsystembonuscaldarioffensive1launcherrof.py deleted file mode 100644 index 7a7418ff2..000000000 --- a/eos/effects/subsystembonuscaldarioffensive1launcherrof.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariOffensive1LauncherROF -# -# Used by: -# Subsystem: Tengu Offensive - Accelerated Ejection Bay -type = "passive" - - -def handler(fit, src, context): - groups = ("Missile Launcher Heavy", "Missile Launcher Rapid Light", "Missile Launcher Heavy Assault") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py b/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py deleted file mode 100644 index 830e6ae1b..000000000 --- a/eos/effects/subsystembonuscaldarioffensive2hybridweapondamagemultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariOffensive2HybridWeaponDamageMultiplier -# -# Used by: -# Subsystem: Tengu Offensive - Magnetic Infusion Basin -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), - skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py b/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py deleted file mode 100644 index ba959521c..000000000 --- a/eos/effects/subsystembonuscaldarioffensive2missilelauncherkineticdamage.py +++ /dev/null @@ -1,17 +0,0 @@ -# subsystemBonusCaldariOffensive2MissileLauncherKineticDamage -# -# Used by: -# Subsystem: Tengu Offensive - Accelerated Ejection Bay -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", src.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), - skill="Caldari Offensive Systems") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles"), - "kineticDamage", src.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), - skill="Caldari Offensive Systems") - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Assault Missiles"), - "kineticDamage", src.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), - skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive2remoteshieldboostercapuse.py b/eos/effects/subsystembonuscaldarioffensive2remoteshieldboostercapuse.py deleted file mode 100644 index 9d327606c..000000000 --- a/eos/effects/subsystembonuscaldarioffensive2remoteshieldboostercapuse.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariOffensive2RemoteShieldBoosterCapUse -# -# Used by: -# Subsystem: Tengu Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "capacitorNeed", src.getModifiedItemAttr("subsystemBonusCaldariOffensive2"), - skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3hmlhamvelocity.py b/eos/effects/subsystembonuscaldarioffensive3hmlhamvelocity.py deleted file mode 100644 index dbe5e88db..000000000 --- a/eos/effects/subsystembonuscaldarioffensive3hmlhamvelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariOffensive3HMLHAMVelocity -# -# Used by: -# Subsystem: Tengu Offensive - Accelerated Ejection Bay -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles") or mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", src.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), - skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensive3remoteshieldboosterheat.py b/eos/effects/subsystembonuscaldarioffensive3remoteshieldboosterheat.py deleted file mode 100644 index 44a471a6d..000000000 --- a/eos/effects/subsystembonuscaldarioffensive3remoteshieldboosterheat.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariOffensive3RemoteShieldBoosterHeat -# -# Used by: -# Subsystem: Tengu Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "overloadSelfDurationBonus", src.getModifiedItemAttr("subsystemBonusCaldariOffensive3"), - skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensivecommandbursts.py b/eos/effects/subsystembonuscaldarioffensivecommandbursts.py deleted file mode 100644 index e83045ae8..000000000 --- a/eos/effects/subsystembonuscaldarioffensivecommandbursts.py +++ /dev/null @@ -1,40 +0,0 @@ -# subSystemBonusCaldariOffensiveCommandBursts -# -# Used by: -# Subsystem: Tengu Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusCaldariOffensive"), skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py b/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py deleted file mode 100644 index a2d51c087..000000000 --- a/eos/effects/subsystembonuscaldarioffensivehybridweaponmaxrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariOffensiveHybridWeaponMaxRange -# -# Used by: -# Subsystem: Tengu Offensive - Magnetic Infusion Basin -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "maxRange", module.getModifiedItemAttr("subsystemBonusCaldariOffensive"), - skill="Caldari Offensive Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsion2agility.py b/eos/effects/subsystembonuscaldaripropulsion2agility.py deleted file mode 100644 index c923e51bd..000000000 --- a/eos/effects/subsystembonuscaldaripropulsion2agility.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariPropulsion2Agility -# -# Used by: -# Subsystem: Tengu Propulsion - Chassis Optimization -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("agility", src.getModifiedItemAttr("subsystemBonusCaldariPropulsion2"), - skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsion2propmodheatbenefit.py b/eos/effects/subsystembonuscaldaripropulsion2propmodheatbenefit.py deleted file mode 100644 index e089fdf80..000000000 --- a/eos/effects/subsystembonuscaldaripropulsion2propmodheatbenefit.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariPropulsion2PropModHeatBenefit -# -# Used by: -# Subsystem: Tengu Propulsion - Fuel Catalyst -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner") or mod.item.requiresSkill("High Speed Maneuvering"), - "overloadSpeedFactorBonus", src.getModifiedItemAttr("subsystemBonusCaldariPropulsion2"), - skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsion2warpspeed.py b/eos/effects/subsystembonuscaldaripropulsion2warpspeed.py deleted file mode 100644 index 3e0d5f181..000000000 --- a/eos/effects/subsystembonuscaldaripropulsion2warpspeed.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariPropulsion2WarpSpeed -# -# Used by: -# Subsystem: Tengu Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("subsystemBonusCaldariPropulsion2"), - skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py b/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py deleted file mode 100644 index c97944920..000000000 --- a/eos/effects/subsystembonuscaldaripropulsionafterburnerspeedfactor.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusCaldariPropulsionAfterburnerSpeedFactor -# -# Used by: -# Subsystem: Tengu Propulsion - Fuel Catalyst -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), - skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsionmaxvelocity.py b/eos/effects/subsystembonuscaldaripropulsionmaxvelocity.py deleted file mode 100644 index b883e9b9d..000000000 --- a/eos/effects/subsystembonuscaldaripropulsionmaxvelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariPropulsionMaxVelocity -# -# Used by: -# Subsystem: Tengu Propulsion - Chassis Optimization -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("maxVelocity", src.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), - skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscaldaripropulsionwarpcapacitor.py b/eos/effects/subsystembonuscaldaripropulsionwarpcapacitor.py deleted file mode 100644 index 050e87d91..000000000 --- a/eos/effects/subsystembonuscaldaripropulsionwarpcapacitor.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusCaldariPropulsionWarpCapacitor -# -# Used by: -# Subsystem: Tengu Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpCapacitorNeed", src.getModifiedItemAttr("subsystemBonusCaldariPropulsion"), - skill="Caldari Propulsion Systems") diff --git a/eos/effects/subsystembonuscommandburstfittingreduction.py b/eos/effects/subsystembonuscommandburstfittingreduction.py deleted file mode 100644 index 8549a57bf..000000000 --- a/eos/effects/subsystembonuscommandburstfittingreduction.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusCommandBurstFittingReduction -# -# Used by: -# Subsystems named like: Offensive Support Processor (4 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "power", - src.getModifiedItemAttr("subsystemCommandBurstFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Leadership"), "cpu", - src.getModifiedItemAttr("subsystemCommandBurstFittingReduction")) diff --git a/eos/effects/subsystembonusgallentecore2energyresistance.py b/eos/effects/subsystembonusgallentecore2energyresistance.py deleted file mode 100644 index 1a3c834c2..000000000 --- a/eos/effects/subsystembonusgallentecore2energyresistance.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteCore2EnergyResistance -# -# Used by: -# Subsystem: Proteus Core - Augmented Fusion Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("energyWarfareResistance", src.getModifiedItemAttr("subsystemBonusGallenteCore2"), - skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallentecore2maxtargetingrange.py b/eos/effects/subsystembonusgallentecore2maxtargetingrange.py deleted file mode 100644 index 9e2e880f4..000000000 --- a/eos/effects/subsystembonusgallentecore2maxtargetingrange.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteCore2MaxTargetingRange -# -# Used by: -# Subsystem: Proteus Core - Electronic Efficiency Gate -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("maxTargetRange", src.getModifiedItemAttr("subsystemBonusGallenteCore2"), - skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallentecore2warpscramblerange.py b/eos/effects/subsystembonusgallentecore2warpscramblerange.py deleted file mode 100644 index 0d93f558b..000000000 --- a/eos/effects/subsystembonusgallentecore2warpscramblerange.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteCore2WarpScrambleRange -# -# Used by: -# Subsystem: Proteus Core - Friction Extension Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "maxRange", - src.getModifiedItemAttr("subsystemBonusGallenteCore2"), skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallentecore3warpscramheatbonus.py b/eos/effects/subsystembonusgallentecore3warpscramheatbonus.py deleted file mode 100644 index 9060dac39..000000000 --- a/eos/effects/subsystembonusgallentecore3warpscramheatbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteCore3WarpScramHeatBonus -# -# Used by: -# Subsystem: Proteus Core - Friction Extension Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Warp Scrambler", "overloadRangeBonus", - src.getModifiedItemAttr("subsystemBonusGallenteCore3"), skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallentecorecapacitorrecharge.py b/eos/effects/subsystembonusgallentecorecapacitorrecharge.py deleted file mode 100644 index 52c020b91..000000000 --- a/eos/effects/subsystembonusgallentecorecapacitorrecharge.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteCoreCapacitorRecharge -# -# Used by: -# Subsystem: Proteus Core - Augmented Fusion Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("rechargeRate", src.getModifiedItemAttr("subsystemBonusGallenteCore"), - skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallentecorescanstrengthmagnetometric.py b/eos/effects/subsystembonusgallentecorescanstrengthmagnetometric.py deleted file mode 100644 index 793b071ac..000000000 --- a/eos/effects/subsystembonusgallentecorescanstrengthmagnetometric.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteCoreScanStrengthMagnetometric -# -# Used by: -# Subsystem: Proteus Core - Electronic Efficiency Gate -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanMagnetometricStrength", src.getModifiedItemAttr("subsystemBonusGallenteCore"), - skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallentedefensive2hardenerheat.py b/eos/effects/subsystembonusgallentedefensive2hardenerheat.py deleted file mode 100644 index d4c2f7e1d..000000000 --- a/eos/effects/subsystembonusgallentedefensive2hardenerheat.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusGallenteDefensive2HardenerHeat -# -# Used by: -# Subsystem: Proteus Defensive - Augmented Plating -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadHardeningBonus", - src.getModifiedItemAttr("subsystemBonusGallenteDefensive2"), skill="Gallente Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadSelfDurationBonus", - src.getModifiedItemAttr("subsystemBonusGallenteDefensive2"), skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensive2scanprobestrength.py b/eos/effects/subsystembonusgallentedefensive2scanprobestrength.py deleted file mode 100644 index e5e7955d8..000000000 --- a/eos/effects/subsystembonusgallentedefensive2scanprobestrength.py +++ /dev/null @@ -1,10 +0,0 @@ -# subSystemBonusGallenteDefensive2ScanProbeStrength -# -# Used by: -# Subsystem: Proteus Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), "baseSensorStrength", - src.getModifiedItemAttr("subsystemBonusGallenteDefensive2"), skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensive3armorrepheat.py b/eos/effects/subsystembonusgallentedefensive3armorrepheat.py deleted file mode 100644 index 1f2e9d309..000000000 --- a/eos/effects/subsystembonusgallentedefensive3armorrepheat.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemBonusGallenteDefensive3ArmorRepHeat -# -# Used by: -# Subsystem: Proteus Defensive - Covert Reconfiguration -# Subsystem: Proteus Defensive - Nanobot Injector -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "overloadSelfDurationBonus", src.getModifiedItemAttr("subsystemBonusGallenteDefensive3"), - skill="Gallente Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "overloadArmorDamageAmount", src.getModifiedItemAttr("subsystemBonusGallenteDefensive3"), - skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensivearmorhp.py b/eos/effects/subsystembonusgallentedefensivearmorhp.py deleted file mode 100644 index e200be121..000000000 --- a/eos/effects/subsystembonusgallentedefensivearmorhp.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteDefensiveArmorHP -# -# Used by: -# Subsystem: Proteus Defensive - Augmented Plating -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("armorHP", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), - skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py b/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py deleted file mode 100644 index 6d9639e83..000000000 --- a/eos/effects/subsystembonusgallentedefensivearmorrepairamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusGallenteDefensiveArmorRepairAmount -# -# Used by: -# Subsystem: Proteus Defensive - Covert Reconfiguration -# Subsystem: Proteus Defensive - Nanobot Injector -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("subsystemBonusGallenteDefensive"), - skill="Gallente Defensive Systems") diff --git a/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py b/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py deleted file mode 100644 index d68012583..000000000 --- a/eos/effects/subsystembonusgallenteengineeringheatdamagereduction.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusGallenteEngineeringHeatDamageReduction -# -# Used by: -# Subsystem: Proteus Core - Friction Extension Processor -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusGallenteCore"), - skill="Gallente Core Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive2dronevelotracking.py b/eos/effects/subsystembonusgallenteoffensive2dronevelotracking.py deleted file mode 100644 index 72b7e628d..000000000 --- a/eos/effects/subsystembonusgallenteoffensive2dronevelotracking.py +++ /dev/null @@ -1,14 +0,0 @@ -# subsystemBonusGallenteOffensive2DroneVeloTracking -# -# Used by: -# Subsystem: Proteus Offensive - Drone Synthesis Projector -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "maxVelocity", src.getModifiedItemAttr("subsystemBonusGallenteOffensive2"), - skill="Gallente Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "trackingSpeed", src.getModifiedItemAttr("subsystemBonusGallenteOffensive2"), - skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py b/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py deleted file mode 100644 index 23b44db1e..000000000 --- a/eos/effects/subsystembonusgallenteoffensive2hybridweapondamagemultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusGallenteOffensive2HybridWeaponDamageMultiplier -# -# Used by: -# Subsystem: Proteus Offensive - Hybrid Encoding Platform -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusGallenteOffensive2"), - skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive2remotearmorrepaircapuse.py b/eos/effects/subsystembonusgallenteoffensive2remotearmorrepaircapuse.py deleted file mode 100644 index 4fbccf015..000000000 --- a/eos/effects/subsystembonusgallenteoffensive2remotearmorrepaircapuse.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteOffensive2RemoteArmorRepairCapUse -# -# Used by: -# Subsystem: Proteus Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "capacitorNeed", - src.getModifiedItemAttr("subsystemBonusGallenteOffensive2"), skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive3remotearmorrepairheat.py b/eos/effects/subsystembonusgallenteoffensive3remotearmorrepairheat.py deleted file mode 100644 index 651810140..000000000 --- a/eos/effects/subsystembonusgallenteoffensive3remotearmorrepairheat.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallenteOffensive3RemoteArmorRepairHeat -# -# Used by: -# Subsystem: Proteus Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), "overloadSelfDurationBonus", - src.getModifiedItemAttr("subsystemBonusGallenteOffensive3"), skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensive3turrettracking.py b/eos/effects/subsystembonusgallenteoffensive3turrettracking.py deleted file mode 100644 index 75e20dfca..000000000 --- a/eos/effects/subsystembonusgallenteoffensive3turrettracking.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusGallenteOffensive3TurretTracking -# -# Used by: -# Subsystem: Proteus Offensive - Drone Synthesis Projector -# Subsystem: Proteus Offensive - Hybrid Encoding Platform -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "trackingSpeed", module.getModifiedItemAttr("subsystemBonusGallenteOffensive3"), - skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensivecommandbursts.py b/eos/effects/subsystembonusgallenteoffensivecommandbursts.py deleted file mode 100644 index dfa14ae83..000000000 --- a/eos/effects/subsystembonusgallenteoffensivecommandbursts.py +++ /dev/null @@ -1,40 +0,0 @@ -# subSystemBonusGallenteOffensiveCommandBursts -# -# Used by: -# Subsystem: Proteus Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Information Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensivedronedamagehp.py b/eos/effects/subsystembonusgallenteoffensivedronedamagehp.py deleted file mode 100644 index 4f1abbb8d..000000000 --- a/eos/effects/subsystembonusgallenteoffensivedronedamagehp.py +++ /dev/null @@ -1,20 +0,0 @@ -# subsystemBonusGallenteOffensiveDroneDamageHP -# -# Used by: -# Subsystem: Proteus Offensive - Drone Synthesis Projector -type = "passive" - - -def handler(fit, src, context): - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "armorHP", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), - skill="Gallente Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "hp", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), - skill="Gallente Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "damageMultiplier", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), - skill="Gallente Offensive Systems") - fit.drones.filteredItemBoost(lambda mod: mod.item.requiresSkill("Drones"), - "shieldCapacity", src.getModifiedItemAttr("subsystemBonusGallenteOffensive"), - skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py b/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py deleted file mode 100644 index 67900a90b..000000000 --- a/eos/effects/subsystembonusgallenteoffensivehybridweaponfalloff.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusGallenteOffensiveHybridWeaponFalloff -# -# Used by: -# Subsystem: Proteus Offensive - Hybrid Encoding Platform -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "falloff", module.getModifiedItemAttr("subsystemBonusGallenteOffensive"), - skill="Gallente Offensive Systems") diff --git a/eos/effects/subsystembonusgallentepropulsion2agility.py b/eos/effects/subsystembonusgallentepropulsion2agility.py deleted file mode 100644 index 5e060b092..000000000 --- a/eos/effects/subsystembonusgallentepropulsion2agility.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallentePropulsion2Agility -# -# Used by: -# Subsystem: Proteus Propulsion - Hyperspatial Optimization -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("agility", src.getModifiedItemAttr("subsystemBonusGallentePropulsion2"), - skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsion2propmodheatbenefit.py b/eos/effects/subsystembonusgallentepropulsion2propmodheatbenefit.py deleted file mode 100644 index 96dc20bb4..000000000 --- a/eos/effects/subsystembonusgallentepropulsion2propmodheatbenefit.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusGallentePropulsion2PropModHeatBenefit -# -# Used by: -# Subsystem: Proteus Propulsion - Localized Injectors -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner") or mod.item.requiresSkill("High Speed Maneuvering"), - "overloadSpeedFactorBonus", src.getModifiedItemAttr("subsystemBonusGallentePropulsion2"), - skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsion2warpspeed.py b/eos/effects/subsystembonusgallentepropulsion2warpspeed.py deleted file mode 100644 index 043a3d962..000000000 --- a/eos/effects/subsystembonusgallentepropulsion2warpspeed.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallentePropulsion2WarpSpeed -# -# Used by: -# Subsystem: Proteus Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("subsystemBonusGallentePropulsion2"), - skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py b/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py deleted file mode 100644 index 7a9b3fed0..000000000 --- a/eos/effects/subsystembonusgallentepropulsionabmwdcapneed.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusGallentePropulsionABMWDCapNeed -# -# Used by: -# Subsystem: Proteus Propulsion - Localized Injectors -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "capacitorNeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), - skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionwarpcapacitor.py b/eos/effects/subsystembonusgallentepropulsionwarpcapacitor.py deleted file mode 100644 index f267ba0bd..000000000 --- a/eos/effects/subsystembonusgallentepropulsionwarpcapacitor.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallentePropulsionWarpCapacitor -# -# Used by: -# Subsystem: Proteus Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpCapacitorNeed", src.getModifiedItemAttr("subsystemBonusGallentePropulsion"), - skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusgallentepropulsionwarpspeed.py b/eos/effects/subsystembonusgallentepropulsionwarpspeed.py deleted file mode 100644 index 33f4dc718..000000000 --- a/eos/effects/subsystembonusgallentepropulsionwarpspeed.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusGallentePropulsionWarpSpeed -# -# Used by: -# Subsystem: Proteus Propulsion - Hyperspatial Optimization -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("baseWarpSpeed", module.getModifiedItemAttr("subsystemBonusGallentePropulsion"), - skill="Gallente Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarcore2energyresistance.py b/eos/effects/subsystembonusminmatarcore2energyresistance.py deleted file mode 100644 index c2f93a623..000000000 --- a/eos/effects/subsystembonusminmatarcore2energyresistance.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarCore2EnergyResistance -# -# Used by: -# Subsystem: Loki Core - Augmented Nuclear Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("energyWarfareResistance", src.getModifiedItemAttr("subsystemBonusMinmatarCore2"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatarcore2maxtargetingrange.py b/eos/effects/subsystembonusminmatarcore2maxtargetingrange.py deleted file mode 100644 index 4417e41cb..000000000 --- a/eos/effects/subsystembonusminmatarcore2maxtargetingrange.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarCore2MaxTargetingRange -# -# Used by: -# Subsystem: Loki Core - Dissolution Sequencer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("maxTargetRange", src.getModifiedItemAttr("subsystemBonusMinmatarCore2"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatarcore2stasiswebifierrange.py b/eos/effects/subsystembonusminmatarcore2stasiswebifierrange.py deleted file mode 100644 index 1b05d6864..000000000 --- a/eos/effects/subsystembonusminmatarcore2stasiswebifierrange.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarCore2StasisWebifierRange -# -# Used by: -# Subsystem: Loki Core - Immobility Drivers -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "maxRange", src.getModifiedItemAttr("subsystemBonusMinmatarCore2"), skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatarcore3scanresolution.py b/eos/effects/subsystembonusminmatarcore3scanresolution.py deleted file mode 100644 index 3fb57e5e6..000000000 --- a/eos/effects/subsystembonusminmatarcore3scanresolution.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarCore3ScanResolution -# -# Used by: -# Subsystem: Loki Core - Dissolution Sequencer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanResolution", src.getModifiedItemAttr("subsystemBonusMinmatarCore3"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatarcore3stasiswebheatbonus.py b/eos/effects/subsystembonusminmatarcore3stasiswebheatbonus.py deleted file mode 100644 index b9233bacb..000000000 --- a/eos/effects/subsystembonusminmatarcore3stasiswebheatbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarCore3StasisWebHeatBonus -# -# Used by: -# Subsystem: Loki Core - Immobility Drivers -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Stasis Web", - "overloadRangeBonus", src.getModifiedItemAttr("subsystemBonusMinmatarCore3"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatarcorecapacitorrecharge.py b/eos/effects/subsystembonusminmatarcorecapacitorrecharge.py deleted file mode 100644 index d32fce7ac..000000000 --- a/eos/effects/subsystembonusminmatarcorecapacitorrecharge.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarCoreCapacitorRecharge -# -# Used by: -# Subsystem: Loki Core - Augmented Nuclear Reactor -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("rechargeRate", src.getModifiedItemAttr("subsystemBonusMinmatarCore"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatarcorescanstrengthladar.py b/eos/effects/subsystembonusminmatarcorescanstrengthladar.py deleted file mode 100644 index 0266d09e8..000000000 --- a/eos/effects/subsystembonusminmatarcorescanstrengthladar.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarCoreScanStrengthLADAR -# -# Used by: -# Subsystem: Loki Core - Dissolution Sequencer -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("scanLadarStrength", src.getModifiedItemAttr("subsystemBonusMinmatarCore"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmatardefensive2hardenerheat.py b/eos/effects/subsystembonusminmatardefensive2hardenerheat.py deleted file mode 100644 index f87466071..000000000 --- a/eos/effects/subsystembonusminmatardefensive2hardenerheat.py +++ /dev/null @@ -1,14 +0,0 @@ -# subsystemBonusMinmatarDefensive2HardenerHeat -# -# Used by: -# Subsystem: Loki Defensive - Augmented Durability -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadSelfDurationBonus", - src.getModifiedItemAttr("subsystemBonusMinmatarDefensive2"), skill="Minmatar Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Hull Upgrades"), "overloadHardeningBonus", - src.getModifiedItemAttr("subsystemBonusMinmatarDefensive2"), skill="Minmatar Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Tactical Shield Manipulation"), "overloadHardeningBonus", - src.getModifiedItemAttr("subsystemBonusMinmatarDefensive2"), skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensive2scanprobestrength.py b/eos/effects/subsystembonusminmatardefensive2scanprobestrength.py deleted file mode 100644 index 8879074a6..000000000 --- a/eos/effects/subsystembonusminmatardefensive2scanprobestrength.py +++ /dev/null @@ -1,10 +0,0 @@ -# subSystemBonusMinmatarDefensive2ScanProbeStrength -# -# Used by: -# Subsystem: Loki Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Astrometrics"), "baseSensorStrength", - src.getModifiedItemAttr("subsystemBonusMinmatarDefensive2"), skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensive3localrepheat.py b/eos/effects/subsystembonusminmatardefensive3localrepheat.py deleted file mode 100644 index fe6c0e1ee..000000000 --- a/eos/effects/subsystembonusminmatardefensive3localrepheat.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemBonusMinmatarDefensive3LocalRepHeat -# -# Used by: -# Subsystem: Loki Defensive - Adaptive Defense Node -# Subsystem: Loki Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Shield Operation"), - "overloadArmorDamageAmount", src.getModifiedItemAttr("subsystemBonusMinmatarDefensive3"), - skill="Minmatar Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems") or mod.item.requiresSkill("Shield Operation"), - "overloadSelfDurationBonus", src.getModifiedItemAttr("subsystemBonusMinmatarDefensive3"), - skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensiveshieldarmorhp.py b/eos/effects/subsystembonusminmatardefensiveshieldarmorhp.py deleted file mode 100644 index 5e0b76798..000000000 --- a/eos/effects/subsystembonusminmatardefensiveshieldarmorhp.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusMinmatarDefensiveShieldArmorHP -# -# Used by: -# Subsystem: Loki Defensive - Augmented Durability -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("shieldCapacity", src.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), - skill="Minmatar Defensive Systems") - fit.ship.boostItemAttr("armorHP", src.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), - skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatardefensiveshieldarmorrepairamount.py b/eos/effects/subsystembonusminmatardefensiveshieldarmorrepairamount.py deleted file mode 100644 index 0c43a70d4..000000000 --- a/eos/effects/subsystembonusminmatardefensiveshieldarmorrepairamount.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemBonusMinmatarDefensiveShieldArmorRepairAmount -# -# Used by: -# Subsystem: Loki Defensive - Adaptive Defense Node -# Subsystem: Loki Defensive - Covert Reconfiguration -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"), - "armorDamageAmount", src.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), - skill="Minmatar Defensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation"), - "shieldBonus", src.getModifiedItemAttr("subsystemBonusMinmatarDefensive"), - skill="Minmatar Defensive Systems") diff --git a/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py b/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py deleted file mode 100644 index 2af4c13ca..000000000 --- a/eos/effects/subsystembonusminmatarengineeringheatdamagereduction.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarEngineeringHeatDamageReduction -# -# Used by: -# Subsystem: Loki Core - Immobility Drivers -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: True, "heatDamage", - module.getModifiedItemAttr("subsystemBonusMinmatarCore"), - skill="Minmatar Core Systems") diff --git a/eos/effects/subsystembonusminmataroffensive1hmlhamvelo.py b/eos/effects/subsystembonusminmataroffensive1hmlhamvelo.py deleted file mode 100644 index 49ae9388a..000000000 --- a/eos/effects/subsystembonusminmataroffensive1hmlhamvelo.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensive1HMLHAMVelo -# -# Used by: -# Subsystem: Loki Offensive - Launcher Efficiency Configuration -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Heavy Missiles") or mod.charge.requiresSkill("Heavy Assault Missiles"), - "maxVelocity", container.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive2missilelauncherrof.py b/eos/effects/subsystembonusminmataroffensive2missilelauncherrof.py deleted file mode 100644 index 29e71d306..000000000 --- a/eos/effects/subsystembonusminmataroffensive2missilelauncherrof.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemBonusMinmatarOffensive2MissileLauncherROF -# -# Used by: -# Subsystem: Loki Offensive - Launcher Efficiency Configuration -type = "passive" - - -def handler(fit, src, context): - groups = ("Missile Launcher Heavy", "Missile Launcher Rapid Light", "Missile Launcher Heavy Assault") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "speed", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py b/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py deleted file mode 100644 index c68ff8976..000000000 --- a/eos/effects/subsystembonusminmataroffensive2projectileweapondamagemultiplier.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensive2ProjectileWeaponDamageMultiplier -# -# Used by: -# Subsystem: Loki Offensive - Projectile Scoping Array -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "damageMultiplier", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive2remoterepcapuse.py b/eos/effects/subsystembonusminmataroffensive2remoterepcapuse.py deleted file mode 100644 index 451744d1a..000000000 --- a/eos/effects/subsystembonusminmataroffensive2remoterepcapuse.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensive2RemoteRepCapUse -# -# Used by: -# Subsystem: Loki Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), - "capacitorNeed", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive2"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive3missileexpvelo.py b/eos/effects/subsystembonusminmataroffensive3missileexpvelo.py deleted file mode 100644 index 7dd2cde86..000000000 --- a/eos/effects/subsystembonusminmataroffensive3missileexpvelo.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensive3MissileExpVelo -# -# Used by: -# Subsystem: Loki Offensive - Launcher Efficiency Configuration -type = "passive" - - -def handler(fit, container, context): - fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeVelocity", container.getModifiedItemAttr("subsystemBonusMinmatarOffensive3"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive3remoterepheat.py b/eos/effects/subsystembonusminmataroffensive3remoterepheat.py deleted file mode 100644 index a88a2907d..000000000 --- a/eos/effects/subsystembonusminmataroffensive3remoterepheat.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensive3RemoteRepHeat -# -# Used by: -# Subsystem: Loki Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") or mod.item.requiresSkill("Remote Armor Repair Systems"), - "overloadSelfDurationBonus", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive3"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensive3turrettracking.py b/eos/effects/subsystembonusminmataroffensive3turrettracking.py deleted file mode 100644 index 86f3f5476..000000000 --- a/eos/effects/subsystembonusminmataroffensive3turrettracking.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensive3TurretTracking -# -# Used by: -# Subsystem: Loki Offensive - Projectile Scoping Array -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "trackingSpeed", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive3"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensivecommandbursts.py b/eos/effects/subsystembonusminmataroffensivecommandbursts.py deleted file mode 100644 index 50586ca36..000000000 --- a/eos/effects/subsystembonusminmataroffensivecommandbursts.py +++ /dev/null @@ -1,41 +0,0 @@ -# subSystemBonusMinmatarOffensiveCommandBursts -# -# Used by: -# Subsystem: Loki Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Skirmish Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Command"), - "war" - "fareBuff1Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff3Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff4Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff1Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "buffDuration", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Armored Command"), - "warfareBuff2Value", src.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py b/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py deleted file mode 100644 index e97198498..000000000 --- a/eos/effects/subsystembonusminmataroffensiveprojectileweaponfalloff.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensiveProjectileWeaponFalloff -# -# Used by: -# Subsystem: Loki Offensive - Projectile Scoping Array -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "falloff", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py b/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py deleted file mode 100644 index 4938c002a..000000000 --- a/eos/effects/subsystembonusminmataroffensiveprojectileweaponmaxrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarOffensiveProjectileWeaponMaxRange -# -# Used by: -# Subsystem: Loki Offensive - Projectile Scoping Array -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "maxRange", module.getModifiedItemAttr("subsystemBonusMinmatarOffensive"), - skill="Minmatar Offensive Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsion2agility.py b/eos/effects/subsystembonusminmatarpropulsion2agility.py deleted file mode 100644 index 1a01b509b..000000000 --- a/eos/effects/subsystembonusminmatarpropulsion2agility.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarPropulsion2Agility -# -# Used by: -# Subsystem: Loki Propulsion - Intercalated Nanofibers -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("agility", src.getModifiedItemAttr("subsystemBonusMinmatarPropulsion2"), - skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsion2mwdpenalty.py b/eos/effects/subsystembonusminmatarpropulsion2mwdpenalty.py deleted file mode 100644 index 94bbfe321..000000000 --- a/eos/effects/subsystembonusminmatarpropulsion2mwdpenalty.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarPropulsion2MWDPenalty -# -# Used by: -# Subsystem: Loki Propulsion - Wake Limiter -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("High Speed Maneuvering"), - "signatureRadiusBonus", src.getModifiedItemAttr("subsystemBonusMinmatarPropulsion2"), - skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsion2warpspeed.py b/eos/effects/subsystembonusminmatarpropulsion2warpspeed.py deleted file mode 100644 index d8d8262ca..000000000 --- a/eos/effects/subsystembonusminmatarpropulsion2warpspeed.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarPropulsion2WarpSpeed -# -# Used by: -# Subsystem: Loki Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpSpeedMultiplier", src.getModifiedItemAttr("subsystemBonusMinmatarPropulsion2"), - skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py b/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py deleted file mode 100644 index 1e9775eab..000000000 --- a/eos/effects/subsystembonusminmatarpropulsionafterburnerspeedfactor.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemBonusMinmatarPropulsionAfterburnerSpeedFactor -# -# Used by: -# Subsystem: Loki Propulsion - Wake Limiter -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Afterburner"), - "speedFactor", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), - skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py b/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py deleted file mode 100644 index d7101727d..000000000 --- a/eos/effects/subsystembonusminmatarpropulsionmaxvelocity.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarPropulsionMaxVelocity -# -# Used by: -# Subsystem: Loki Propulsion - Intercalated Nanofibers -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), - skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonusminmatarpropulsionwarpcapacitor.py b/eos/effects/subsystembonusminmatarpropulsionwarpcapacitor.py deleted file mode 100644 index f7f965c59..000000000 --- a/eos/effects/subsystembonusminmatarpropulsionwarpcapacitor.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemBonusMinmatarPropulsionWarpCapacitor -# -# Used by: -# Subsystem: Loki Propulsion - Interdiction Nullifier -type = "passive" - - -def handler(fit, src, context): - fit.ship.boostItemAttr("warpCapacitorNeed", src.getModifiedItemAttr("subsystemBonusMinmatarPropulsion"), - skill="Minmatar Propulsion Systems") diff --git a/eos/effects/subsystembonuswarpbubbleimmune.py b/eos/effects/subsystembonuswarpbubbleimmune.py deleted file mode 100644 index cd29dad70..000000000 --- a/eos/effects/subsystembonuswarpbubbleimmune.py +++ /dev/null @@ -1,9 +0,0 @@ -# subsystemBonusWarpBubbleImmune -# -# Used by: -# Subsystems named like: Propulsion Interdiction Nullifier (4 of 4) -type = "passive" - - -def handler(fit, module, context): - fit.ship.forceItemAttr("warpBubbleImmune", module.getModifiedItemAttr("warpBubbleImmuneModifier")) diff --git a/eos/effects/subsystemenergyneutfittingreduction.py b/eos/effects/subsystemenergyneutfittingreduction.py deleted file mode 100644 index 52c427fa1..000000000 --- a/eos/effects/subsystemenergyneutfittingreduction.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemEnergyNeutFittingReduction -# -# Used by: -# Subsystem: Legion Core - Energy Parasitic Complex -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Energy Nosferatu", "Energy Neutralizer"), - "cpu", src.getModifiedItemAttr("subsystemEnergyNeutFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Energy Nosferatu", "Energy Neutralizer"), - "power", src.getModifiedItemAttr("subsystemEnergyNeutFittingReduction")) diff --git a/eos/effects/subsystemmetfittingreduction.py b/eos/effects/subsystemmetfittingreduction.py deleted file mode 100644 index ea3567a27..000000000 --- a/eos/effects/subsystemmetfittingreduction.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemMETFittingReduction -# -# Used by: -# Subsystem: Legion Offensive - Liquid Crystal Magnifiers -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "cpu", src.getModifiedItemAttr("subsystemMETFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Energy Turret"), - "power", src.getModifiedItemAttr("subsystemMETFittingReduction")) diff --git a/eos/effects/subsystemmhtfittingreduction.py b/eos/effects/subsystemmhtfittingreduction.py deleted file mode 100644 index 29aaec123..000000000 --- a/eos/effects/subsystemmhtfittingreduction.py +++ /dev/null @@ -1,14 +0,0 @@ -# subsystemMHTFittingReduction -# -# Used by: -# Subsystem: Proteus Offensive - Drone Synthesis Projector -# Subsystem: Proteus Offensive - Hybrid Encoding Platform -# Subsystem: Tengu Offensive - Magnetic Infusion Basin -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "cpu", src.getModifiedItemAttr("subsystemMHTFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Hybrid Turret"), - "power", src.getModifiedItemAttr("subsystemMHTFittingReduction")) diff --git a/eos/effects/subsystemmmissilefittingreduction.py b/eos/effects/subsystemmmissilefittingreduction.py deleted file mode 100644 index 299536c2a..000000000 --- a/eos/effects/subsystemmmissilefittingreduction.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemMMissileFittingReduction -# -# Used by: -# Subsystem: Legion Offensive - Assault Optimization -# Subsystem: Loki Offensive - Launcher Efficiency Configuration -# Subsystem: Tengu Offensive - Accelerated Ejection Bay -type = "passive" - - -def handler(fit, src, context): - groups = ("Missile Launcher Heavy", "Missile Launcher Rapid Light", "Missile Launcher Heavy Assault") - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "cpu", src.getModifiedItemAttr("subsystemMMissileFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, - "power", src.getModifiedItemAttr("subsystemMMissileFittingReduction")) diff --git a/eos/effects/subsystemmptfittingreduction.py b/eos/effects/subsystemmptfittingreduction.py deleted file mode 100644 index 7660239b8..000000000 --- a/eos/effects/subsystemmptfittingreduction.py +++ /dev/null @@ -1,12 +0,0 @@ -# subsystemMPTFittingReduction -# -# Used by: -# Subsystem: Loki Offensive - Projectile Scoping Array -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "power", src.getModifiedItemAttr("subsystemMPTFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Medium Projectile Turret"), - "cpu", src.getModifiedItemAttr("subsystemMPTFittingReduction")) diff --git a/eos/effects/subsystemmrarfittingreduction.py b/eos/effects/subsystemmrarfittingreduction.py deleted file mode 100644 index 070407bca..000000000 --- a/eos/effects/subsystemmrarfittingreduction.py +++ /dev/null @@ -1,14 +0,0 @@ -# subsystemMRARFittingReduction -# -# Used by: -# Subsystems named like: Offensive Support Processor (3 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") and - mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, - "cpu", src.getModifiedItemAttr("subsystemMRARFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems") and - mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, - "power", src.getModifiedItemAttr("subsystemMRARFittingReduction")) diff --git a/eos/effects/subsystemmrsbfittingreduction.py b/eos/effects/subsystemmrsbfittingreduction.py deleted file mode 100644 index 98185b770..000000000 --- a/eos/effects/subsystemmrsbfittingreduction.py +++ /dev/null @@ -1,15 +0,0 @@ -# subsystemMRSBFittingReduction -# -# Used by: -# Subsystem: Loki Offensive - Support Processor -# Subsystem: Tengu Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") and - mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, - "cpu", src.getModifiedItemAttr("subsystemMRSBFittingReduction")) - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Emission Systems") and - mod.getModifiedItemAttr('mediumRemoteRepFittingMultiplier', 0) == 1, - "power", src.getModifiedItemAttr("subsystemMRSBFittingReduction")) diff --git a/eos/effects/subsystemremotearmorrepairerfalloffbonus.py b/eos/effects/subsystemremotearmorrepairerfalloffbonus.py deleted file mode 100644 index 20ac549af..000000000 --- a/eos/effects/subsystemremotearmorrepairerfalloffbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemRemoteArmorRepairerFalloffBonus -# -# Used by: -# Subsystems named like: Offensive Support Processor (3 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Remote Armor Repairer", "Ancillary Remote Armor Repairer"), - "falloffEffectiveness", src.getModifiedItemAttr("remoteArmorRepairerFalloffBonus")) diff --git a/eos/effects/subsystemremotearmorrepaireroptimalbonus.py b/eos/effects/subsystemremotearmorrepaireroptimalbonus.py deleted file mode 100644 index 6112559c3..000000000 --- a/eos/effects/subsystemremotearmorrepaireroptimalbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# subsystemRemoteArmorRepairerOptimalBonus -# -# Used by: -# Subsystems named like: Offensive Support Processor (3 of 4) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Remote Armor Repairer", "Ancillary Remote Armor Repairer"), - "maxRange", src.getModifiedItemAttr("remoteArmorRepairerOptimalBonus")) diff --git a/eos/effects/subsystemremoteshieldboostfalloffbonus.py b/eos/effects/subsystemremoteshieldboostfalloffbonus.py deleted file mode 100644 index ab3a9f867..000000000 --- a/eos/effects/subsystemremoteshieldboostfalloffbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# subsystemRemoteShieldBoostFalloffBonus -# -# Used by: -# Subsystem: Loki Offensive - Support Processor -# Subsystem: Tengu Offensive - Support Processor -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in ("Remote Shield Booster", "Ancillary Remote Shield Booster"), - "falloffEffectiveness", src.getModifiedItemAttr("remoteShieldBoosterFalloffBonus")) diff --git a/eos/effects/superweaponamarr.py b/eos/effects/superweaponamarr.py deleted file mode 100644 index dfc06475e..000000000 --- a/eos/effects/superweaponamarr.py +++ /dev/null @@ -1,9 +0,0 @@ -# superWeaponAmarr -# -# Used by: -# Module: 'Judgment' Electromagnetic Doomsday -type = 'active' - - -def handler(fit, module, context): - pass diff --git a/eos/effects/superweaponcaldari.py b/eos/effects/superweaponcaldari.py deleted file mode 100644 index a7ea155e2..000000000 --- a/eos/effects/superweaponcaldari.py +++ /dev/null @@ -1,9 +0,0 @@ -# superWeaponCaldari -# -# Used by: -# Module: 'Oblivion' Kinetic Doomsday -type = 'active' - - -def handler(fit, module, context): - pass diff --git a/eos/effects/superweapongallente.py b/eos/effects/superweapongallente.py deleted file mode 100644 index 21d330213..000000000 --- a/eos/effects/superweapongallente.py +++ /dev/null @@ -1,9 +0,0 @@ -# superWeaponGallente -# -# Used by: -# Module: 'Aurora Ominae' Thermal Doomsday -type = 'active' - - -def handler(fit, module, context): - pass diff --git a/eos/effects/superweaponminmatar.py b/eos/effects/superweaponminmatar.py deleted file mode 100644 index 25b0b57ef..000000000 --- a/eos/effects/superweaponminmatar.py +++ /dev/null @@ -1,9 +0,0 @@ -# superWeaponMinmatar -# -# Used by: -# Module: 'Gjallarhorn' Explosive Doomsday -type = 'active' - - -def handler(fit, module, context): - pass diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py deleted file mode 100644 index ce79c7ea8..000000000 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupenergyweapon.py +++ /dev/null @@ -1,10 +0,0 @@ -# surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupEnergyWeapon -# -# Used by: -# Skill: Surgical Strike -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py deleted file mode 100644 index 2ead8310e..000000000 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgrouphybridweapon.py +++ /dev/null @@ -1,10 +0,0 @@ -# surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupHybridWeapon -# -# Used by: -# Skill: Surgical Strike -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprecursorturret.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprecursorturret.py deleted file mode 100644 index f1aaa88e2..000000000 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprecursorturret.py +++ /dev/null @@ -1,10 +0,0 @@ -# surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupPrecursorTurret -# -# Used by: -# Skill: Surgical Strike -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Precursor Weapon", - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py deleted file mode 100644 index 5cd9e697b..000000000 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipgroupprojectileweapon.py +++ /dev/null @@ -1,10 +0,0 @@ -# surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipGroupProjectileWeapon -# -# Used by: -# Skill: Surgical Strike -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", - "damageMultiplier", skill.getModifiedItemAttr("damageMultiplierBonus") * skill.level) diff --git a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py b/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py deleted file mode 100644 index 481ef2604..000000000 --- a/eos/effects/surgicalstrikedamagemultiplierbonuspostpercentdamagemultiplierlocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,12 +0,0 @@ -# surgicalStrikeDamageMultiplierBonusPostPercentDamageMultiplierLocationShipModulesRequiringGunnery -# -# Used by: -# Implants named like: Agency 'Pyrolancea' DB Dose (4 of 4) -# Implants named like: Eifyr and Co. 'Gunslinger' Surgical Strike SS (6 of 6) -# Implant: Standard Cerebral Accelerator -type = "passive" - - -def handler(fit, implant, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "damageMultiplier", implant.getModifiedItemAttr("damageMultiplierBonus")) diff --git a/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py b/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py deleted file mode 100644 index d28e30f76..000000000 --- a/eos/effects/surgicalstrikefalloffbonuspostpercentfallofflocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,13 +0,0 @@ -# surgicalStrikeFalloffBonusPostPercentFalloffLocationShipModulesRequiringGunnery -# -# Used by: -# Implants named like: Sooth Sayer Booster (4 of 4) -# Implants named like: Zainou 'Deadeye' Trajectory Analysis TA (6 of 6) -# Skill: Trajectory Analysis -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "falloff", container.getModifiedItemAttr("falloffBonus") * level) diff --git a/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py b/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py deleted file mode 100644 index 6dcf933fd..000000000 --- a/eos/effects/surveyscanspeedbonuspostpercentdurationlocationshipmodulesrequiringelectronics.py +++ /dev/null @@ -1,12 +0,0 @@ -# surveyScanspeedBonusPostPercentDurationLocationShipModulesRequiringElectronics -# -# Used by: -# Modules named like: Signal Focusing Kit (8 of 8) -# Skill: Survey -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("CPU Management"), - "duration", container.getModifiedItemAttr("scanspeedBonus") * level) diff --git a/eos/effects/systemagility.py b/eos/effects/systemagility.py deleted file mode 100644 index ce8ba7370..000000000 --- a/eos/effects/systemagility.py +++ /dev/null @@ -1,10 +0,0 @@ -# systemAgility -# -# Used by: -# Celestials named like: Black Hole Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("agility", beacon.getModifiedItemAttr("agilityMultiplier"), stackingPenalties=True) diff --git a/eos/effects/systemaoecloudsize.py b/eos/effects/systemaoecloudsize.py deleted file mode 100644 index e8e4e9b0c..000000000 --- a/eos/effects/systemaoecloudsize.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemAoeCloudSize -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeCloudSize", beacon.getModifiedItemAttr("aoeCloudSizeMultiplier")) diff --git a/eos/effects/systemaoevelocity.py b/eos/effects/systemaoevelocity.py deleted file mode 100644 index 3ea6fea6c..000000000 --- a/eos/effects/systemaoevelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemAoeVelocity -# -# Used by: -# Celestials named like: Black Hole Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "aoeVelocity", beacon.getModifiedItemAttr("aoeVelocityMultiplier")) diff --git a/eos/effects/systemarmoremresistance.py b/eos/effects/systemarmoremresistance.py deleted file mode 100644 index 901d4f7f8..000000000 --- a/eos/effects/systemarmoremresistance.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemArmorEmResistance -# -# Used by: -# Celestials named like: Incursion Effect (2 of 2) -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorEmDamageResonance", beacon.getModifiedItemAttr("armorEmDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemarmorexplosiveresistance.py b/eos/effects/systemarmorexplosiveresistance.py deleted file mode 100644 index ccd8104d5..000000000 --- a/eos/effects/systemarmorexplosiveresistance.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemArmorExplosiveResistance -# -# Used by: -# Celestials named like: Incursion Effect (2 of 2) -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorExplosiveDamageResonance", - beacon.getModifiedItemAttr("armorExplosiveDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemarmorhp.py b/eos/effects/systemarmorhp.py deleted file mode 100644 index 05a3f91ab..000000000 --- a/eos/effects/systemarmorhp.py +++ /dev/null @@ -1,10 +0,0 @@ -# systemArmorHP -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("armorHP", beacon.getModifiedItemAttr("armorHPMultiplier")) diff --git a/eos/effects/systemarmorkineticresistance.py b/eos/effects/systemarmorkineticresistance.py deleted file mode 100644 index 845b03da6..000000000 --- a/eos/effects/systemarmorkineticresistance.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemArmorKineticResistance -# -# Used by: -# Celestials named like: Incursion Effect (2 of 2) -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorKineticDamageResonance", - beacon.getModifiedItemAttr("armorKineticDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemarmorremoterepairamount.py b/eos/effects/systemarmorremoterepairamount.py deleted file mode 100644 index 4c18e8589..000000000 --- a/eos/effects/systemarmorremoterepairamount.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemArmorRemoteRepairAmount -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"), - "armorDamageAmount", - module.getModifiedItemAttr("armorDamageAmountMultiplierRemote"), - stackingPenalties=True) diff --git a/eos/effects/systemarmorrepairamount.py b/eos/effects/systemarmorrepairamount.py deleted file mode 100644 index da585583d..000000000 --- a/eos/effects/systemarmorrepairamount.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemArmorRepairAmount -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Repair Systems") or - mod.item.requiresSkill("Capital Repair Systems"), - "armorDamageAmount", module.getModifiedItemAttr("armorDamageAmountMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemarmorthermalresistance.py b/eos/effects/systemarmorthermalresistance.py deleted file mode 100644 index 0a5eb0be6..000000000 --- a/eos/effects/systemarmorthermalresistance.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemArmorThermalResistance -# -# Used by: -# Celestials named like: Incursion Effect (2 of 2) -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("armorThermalDamageResonance", - beacon.getModifiedItemAttr("armorThermalDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemcapacitorcapacity.py b/eos/effects/systemcapacitorcapacity.py deleted file mode 100644 index 63a57c9e2..000000000 --- a/eos/effects/systemcapacitorcapacity.py +++ /dev/null @@ -1,10 +0,0 @@ -# systemCapacitorCapacity -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("capacitorCapacity", beacon.getModifiedItemAttr("capacitorCapacityMultiplierSystem")) diff --git a/eos/effects/systemcapacitorrecharge.py b/eos/effects/systemcapacitorrecharge.py deleted file mode 100644 index dd89728ed..000000000 --- a/eos/effects/systemcapacitorrecharge.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemCapacitorRecharge -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("rechargeRate", beacon.getModifiedItemAttr("rechargeRateMultiplier")) diff --git a/eos/effects/systemdamagedrones.py b/eos/effects/systemdamagedrones.py deleted file mode 100644 index 6e4cac6f4..000000000 --- a/eos/effects/systemdamagedrones.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageDrones -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.drones.filteredItemMultiply(lambda drone: drone.item.requiresSkill("Drones"), - "damageMultiplier", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamageembombs.py b/eos/effects/systemdamageembombs.py deleted file mode 100644 index e81ca6fd3..000000000 --- a/eos/effects/systemdamageembombs.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageEMBombs -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "emDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamageemmissiles.py b/eos/effects/systemdamageemmissiles.py deleted file mode 100644 index 6a9485f88..000000000 --- a/eos/effects/systemdamageemmissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageEmMissiles -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "emDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamageexplosivebombs.py b/eos/effects/systemdamageexplosivebombs.py deleted file mode 100644 index 11cc26d96..000000000 --- a/eos/effects/systemdamageexplosivebombs.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageExplosiveBombs -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "explosiveDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamageexplosivemissiles.py b/eos/effects/systemdamageexplosivemissiles.py deleted file mode 100644 index da1cfab94..000000000 --- a/eos/effects/systemdamageexplosivemissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageExplosiveMissiles -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "explosiveDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamagefighters.py b/eos/effects/systemdamagefighters.py deleted file mode 100644 index 2718a3789..000000000 --- a/eos/effects/systemdamagefighters.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageFighters -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.drones.filteredItemMultiply(lambda drone: drone.item.requiresSkill("Fighters"), - "damageMultiplier", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamagekineticbombs.py b/eos/effects/systemdamagekineticbombs.py deleted file mode 100644 index 7fb67a6fb..000000000 --- a/eos/effects/systemdamagekineticbombs.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageKineticBombs -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "kineticDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamagekineticmissiles.py b/eos/effects/systemdamagekineticmissiles.py deleted file mode 100644 index 7609052aa..000000000 --- a/eos/effects/systemdamagekineticmissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageKineticMissiles -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "kineticDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamagemultipliergunnery.py b/eos/effects/systemdamagemultipliergunnery.py deleted file mode 100644 index 3b701166a..000000000 --- a/eos/effects/systemdamagemultipliergunnery.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageMultiplierGunnery -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), - "damageMultiplier", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/systemdamagethermalbombs.py b/eos/effects/systemdamagethermalbombs.py deleted file mode 100644 index 675b1adb5..000000000 --- a/eos/effects/systemdamagethermalbombs.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageThermalBombs -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "thermalDamage", beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdamagethermalmissiles.py b/eos/effects/systemdamagethermalmissiles.py deleted file mode 100644 index ada3a084a..000000000 --- a/eos/effects/systemdamagethermalmissiles.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDamageThermalMissiles -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "thermalDamage", beacon.getModifiedItemAttr("damageMultiplierMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemdronetracking.py b/eos/effects/systemdronetracking.py deleted file mode 100644 index f5800c070..000000000 --- a/eos/effects/systemdronetracking.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemDroneTracking -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.drones.filteredItemMultiply(lambda drone: True, - "trackingSpeed", beacon.getModifiedItemAttr("trackingSpeedMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemenergyneutmultiplier.py b/eos/effects/systemenergyneutmultiplier.py deleted file mode 100644 index a5ff4dbb0..000000000 --- a/eos/effects/systemenergyneutmultiplier.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemEnergyNeutMultiplier -# -# Used by: -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Neutralizer", - "energyNeutralizerAmount", - beacon.getModifiedItemAttr("energyWarfareStrengthMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemenergyvampiremultiplier.py b/eos/effects/systemenergyvampiremultiplier.py deleted file mode 100644 index 0cb05180a..000000000 --- a/eos/effects/systemenergyvampiremultiplier.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemEnergyVampireMultiplier -# -# Used by: -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Energy Nosferatu", - "powerTransferAmount", - beacon.getModifiedItemAttr("energyWarfareStrengthMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemgravimetricecmbomb.py b/eos/effects/systemgravimetricecmbomb.py deleted file mode 100644 index 6d04ccf96..000000000 --- a/eos/effects/systemgravimetricecmbomb.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemGravimetricECMBomb -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanGravimetricStrengthBonus", - beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemheatdamage.py b/eos/effects/systemheatdamage.py deleted file mode 100644 index 3b31dc178..000000000 --- a/eos/effects/systemheatdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemHeatDamage -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "heatDamage" in mod.itemModifiedAttributes, - "heatDamage", module.getModifiedItemAttr("heatDamageMultiplier")) diff --git a/eos/effects/systemladarecmbomb.py b/eos/effects/systemladarecmbomb.py deleted file mode 100644 index b5dfc2a98..000000000 --- a/eos/effects/systemladarecmbomb.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemLadarECMBomb -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanLadarStrengthBonus", - beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemmagnetrometricecmbomb.py b/eos/effects/systemmagnetrometricecmbomb.py deleted file mode 100644 index a9a15ec79..000000000 --- a/eos/effects/systemmagnetrometricecmbomb.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemMagnetrometricECMBomb -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanMagnetometricStrengthBonus", - beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemmaxvelocity.py b/eos/effects/systemmaxvelocity.py deleted file mode 100644 index b10fbf8eb..000000000 --- a/eos/effects/systemmaxvelocity.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemMaxVelocity -# -# Used by: -# Celestials named like: Black Hole Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("maxVelocity", beacon.getModifiedItemAttr("maxVelocityMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemmaxvelocitypercentage.py b/eos/effects/systemmaxvelocitypercentage.py deleted file mode 100644 index 133fb7e7a..000000000 --- a/eos/effects/systemmaxvelocitypercentage.py +++ /dev/null @@ -1,10 +0,0 @@ -# systemMaxVelocityPercentage -# -# Used by: -# Celestials named like: Drifter Incursion (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("maxVelocity", beacon.getModifiedItemAttr("maxVelocityMultiplier"), stackingPenalties=True) diff --git a/eos/effects/systemmissilevelocity.py b/eos/effects/systemmissilevelocity.py deleted file mode 100644 index 9870b420d..000000000 --- a/eos/effects/systemmissilevelocity.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemMissileVelocity -# -# Used by: -# Celestials named like: Black Hole Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"), - "maxVelocity", beacon.getModifiedItemAttr("missileVelocityMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemneutbombs.py b/eos/effects/systemneutbombs.py deleted file mode 100644 index 333b3eb56..000000000 --- a/eos/effects/systemneutbombs.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemNeutBombs -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "energyNeutralizerAmount", - beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemoverloadarmor.py b/eos/effects/systemoverloadarmor.py deleted file mode 100644 index d70cb74d0..000000000 --- a/eos/effects/systemoverloadarmor.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadArmor -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadArmorDamageAmount" in mod.itemModifiedAttributes, - "overloadArmorDamageAmount", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloaddamagemodifier.py b/eos/effects/systemoverloaddamagemodifier.py deleted file mode 100644 index 886aa6865..000000000 --- a/eos/effects/systemoverloaddamagemodifier.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadDamageModifier -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadDamageModifier" in mod.itemModifiedAttributes, - "overloadDamageModifier", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloaddurationbonus.py b/eos/effects/systemoverloaddurationbonus.py deleted file mode 100644 index 7fe9d6e12..000000000 --- a/eos/effects/systemoverloaddurationbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadDurationBonus -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadDurationBonus" in mod.itemModifiedAttributes, - "overloadDurationBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadeccmstrength.py b/eos/effects/systemoverloadeccmstrength.py deleted file mode 100644 index 06cd0a1e9..000000000 --- a/eos/effects/systemoverloadeccmstrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadEccmStrength -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadECCMStrenghtBonus" in mod.itemModifiedAttributes, - "overloadECCMStrenghtBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadecmstrength.py b/eos/effects/systemoverloadecmstrength.py deleted file mode 100644 index 8f71dd81c..000000000 --- a/eos/effects/systemoverloadecmstrength.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadEcmStrength -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadECMStrenghtBonus" in mod.itemModifiedAttributes, - "overloadECMStrenghtBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadhardening.py b/eos/effects/systemoverloadhardening.py deleted file mode 100644 index 5d65dfc30..000000000 --- a/eos/effects/systemoverloadhardening.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadHardening -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadHardeningBonus" in mod.itemModifiedAttributes, - "overloadHardeningBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadrange.py b/eos/effects/systemoverloadrange.py deleted file mode 100644 index 971440693..000000000 --- a/eos/effects/systemoverloadrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadRange -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadRangeBonus" in mod.itemModifiedAttributes, - "overloadRangeBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadrof.py b/eos/effects/systemoverloadrof.py deleted file mode 100644 index 139c684df..000000000 --- a/eos/effects/systemoverloadrof.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadRof -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadRofBonus" in mod.itemModifiedAttributes, - "overloadRofBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadselfduration.py b/eos/effects/systemoverloadselfduration.py deleted file mode 100644 index 397c9a00c..000000000 --- a/eos/effects/systemoverloadselfduration.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadSelfDuration -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadSelfDurationBonus" in mod.itemModifiedAttributes, - "overloadSelfDurationBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadshieldbonus.py b/eos/effects/systemoverloadshieldbonus.py deleted file mode 100644 index d468f3cd6..000000000 --- a/eos/effects/systemoverloadshieldbonus.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadShieldBonus -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadShieldBonus" in mod.itemModifiedAttributes, - "overloadShieldBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemoverloadspeedfactor.py b/eos/effects/systemoverloadspeedfactor.py deleted file mode 100644 index a766bbaa8..000000000 --- a/eos/effects/systemoverloadspeedfactor.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemOverloadSpeedFactor -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: "overloadSpeedFactorBonus" in mod.itemModifiedAttributes, - "overloadSpeedFactorBonus", module.getModifiedItemAttr("overloadBonusMultiplier")) diff --git a/eos/effects/systemradarecmbomb.py b/eos/effects/systemradarecmbomb.py deleted file mode 100644 index 444ae4fe7..000000000 --- a/eos/effects/systemradarecmbomb.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemRadarECMBomb -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Bomb Deployment"), - "scanRadarStrengthBonus", - beacon.getModifiedItemAttr("smartbombDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemremotecaptransmitteramount.py b/eos/effects/systemremotecaptransmitteramount.py deleted file mode 100644 index af78de47a..000000000 --- a/eos/effects/systemremotecaptransmitteramount.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemRemoteCapTransmitterAmount -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Remote Capacitor Transmitter", - "powerTransferAmount", beacon.getModifiedItemAttr("energyTransferAmountBonus"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemrocketemdamage.py b/eos/effects/systemrocketemdamage.py deleted file mode 100644 index b49384777..000000000 --- a/eos/effects/systemrocketemdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemRocketEmDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), - "emDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemrocketexplosivedamage.py b/eos/effects/systemrocketexplosivedamage.py deleted file mode 100644 index db6d6653e..000000000 --- a/eos/effects/systemrocketexplosivedamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemRocketExplosiveDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), - "explosiveDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemrocketkineticdamage.py b/eos/effects/systemrocketkineticdamage.py deleted file mode 100644 index 3b539502c..000000000 --- a/eos/effects/systemrocketkineticdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemRocketKineticDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), - "kineticDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemrocketthermaldamage.py b/eos/effects/systemrocketthermaldamage.py deleted file mode 100644 index db5f65c0f..000000000 --- a/eos/effects/systemrocketthermaldamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemRocketThermalDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Rockets"), - "thermalDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemscandurationmodulemodifier.py b/eos/effects/systemscandurationmodulemodifier.py deleted file mode 100644 index bf561c4a2..000000000 --- a/eos/effects/systemscandurationmodulemodifier.py +++ /dev/null @@ -1,10 +0,0 @@ -# systemScanDurationModuleModifier -# -# Used by: -# Modules from group: Scanning Upgrade Time (2 of 2) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"), - "duration", module.getModifiedItemAttr("scanDurationBonus")) diff --git a/eos/effects/systemscandurationskillastrometrics.py b/eos/effects/systemscandurationskillastrometrics.py deleted file mode 100644 index 16c26d373..000000000 --- a/eos/effects/systemscandurationskillastrometrics.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemScanDurationSkillAstrometrics -# -# Used by: -# Implants named like: Poteque 'Prospector' Astrometric Acquisition AQ (3 of 3) -# Skill: Astrometric Acquisition -# Skill: Astrometrics -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Astrometrics"), - "duration", container.getModifiedItemAttr("durationBonus") * level) diff --git a/eos/effects/systemshieldemresistance.py b/eos/effects/systemshieldemresistance.py deleted file mode 100644 index 8e373b52d..000000000 --- a/eos/effects/systemshieldemresistance.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemShieldEmResistance -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldEmDamageResonance", beacon.getModifiedItemAttr("shieldEmDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemshieldexplosiveresistance.py b/eos/effects/systemshieldexplosiveresistance.py deleted file mode 100644 index cc52e5723..000000000 --- a/eos/effects/systemshieldexplosiveresistance.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemShieldExplosiveResistance -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldExplosiveDamageResonance", - beacon.getModifiedItemAttr("shieldExplosiveDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemshieldhp.py b/eos/effects/systemshieldhp.py deleted file mode 100644 index ffe1b6873..000000000 --- a/eos/effects/systemshieldhp.py +++ /dev/null @@ -1,10 +0,0 @@ -# systemShieldHP -# -# Used by: -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("shieldCapacity", beacon.getModifiedItemAttr("shieldCapacityMultiplier")) diff --git a/eos/effects/systemshieldkineticresistance.py b/eos/effects/systemshieldkineticresistance.py deleted file mode 100644 index 7671d6d13..000000000 --- a/eos/effects/systemshieldkineticresistance.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemShieldKineticResistance -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldKineticDamageResonance", - beacon.getModifiedItemAttr("shieldKineticDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemshieldremoterepairamount.py b/eos/effects/systemshieldremoterepairamount.py deleted file mode 100644 index c8dd29645..000000000 --- a/eos/effects/systemshieldremoterepairamount.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemShieldRemoteRepairAmount -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Shield Emission Systems"), - "shieldBonus", module.getModifiedItemAttr("shieldBonusMultiplierRemote"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemshieldrepairamountshieldskills.py b/eos/effects/systemshieldrepairamountshieldskills.py deleted file mode 100644 index 707e2dbbb..000000000 --- a/eos/effects/systemshieldrepairamountshieldskills.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemShieldRepairAmountShieldSkills -# -# Used by: -# Celestials named like: Cataclysmic Variable Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Shield Operation") or - mod.item.requiresSkill("Capital Shield Operation"), - "shieldBonus", module.getModifiedItemAttr("shieldBonusMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemshieldthermalresistance.py b/eos/effects/systemshieldthermalresistance.py deleted file mode 100644 index cd58fcdeb..000000000 --- a/eos/effects/systemshieldthermalresistance.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemShieldThermalResistance -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.boostItemAttr("shieldThermalDamageResonance", - beacon.getModifiedItemAttr("shieldThermalDamageResistanceBonus"), - stackingPenalties=True) diff --git a/eos/effects/systemsignatureradius.py b/eos/effects/systemsignatureradius.py deleted file mode 100644 index f00bb35be..000000000 --- a/eos/effects/systemsignatureradius.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemSignatureRadius -# -# Used by: -# Celestials named like: Pulsar Effect Beacon Class (6 of 6) -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("signatureRadius", beacon.getModifiedItemAttr("signatureRadiusMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemsmallenergydamage.py b/eos/effects/systemsmallenergydamage.py deleted file mode 100644 index d4fd39124..000000000 --- a/eos/effects/systemsmallenergydamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemSmallEnergyDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Energy Turret"), - "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/systemsmallhybriddamage.py b/eos/effects/systemsmallhybriddamage.py deleted file mode 100644 index fedc2f2cf..000000000 --- a/eos/effects/systemsmallhybriddamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemSmallHybridDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Hybrid Turret"), - "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/systemsmallprecursorturretdamage.py b/eos/effects/systemsmallprecursorturretdamage.py deleted file mode 100644 index 595b9a679..000000000 --- a/eos/effects/systemsmallprecursorturretdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemSmallPrecursorTurretDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (5 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Precursor Weapon"), - "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/systemsmallprojectiledamage.py b/eos/effects/systemsmallprojectiledamage.py deleted file mode 100644 index 089c03d46..000000000 --- a/eos/effects/systemsmallprojectiledamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemSmallProjectileDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Small Projectile Turret"), - "damageMultiplier", module.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True) diff --git a/eos/effects/systemsmartbombemdamage.py b/eos/effects/systemsmartbombemdamage.py deleted file mode 100644 index da11e810c..000000000 --- a/eos/effects/systemsmartbombemdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemSmartBombEmDamage -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", - "emDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemsmartbombexplosivedamage.py b/eos/effects/systemsmartbombexplosivedamage.py deleted file mode 100644 index d52964bca..000000000 --- a/eos/effects/systemsmartbombexplosivedamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemSmartBombExplosiveDamage -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", - "explosiveDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemsmartbombkineticdamage.py b/eos/effects/systemsmartbombkineticdamage.py deleted file mode 100644 index 1e7cf7c44..000000000 --- a/eos/effects/systemsmartbombkineticdamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemSmartBombKineticDamage -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", - "kineticDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemsmartbombrange.py b/eos/effects/systemsmartbombrange.py deleted file mode 100644 index 5ccdc6f78..000000000 --- a/eos/effects/systemsmartbombrange.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemSmartBombRange -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", - "empFieldRange", module.getModifiedItemAttr("empFieldRangeMultiplier")) diff --git a/eos/effects/systemsmartbombthermaldamage.py b/eos/effects/systemsmartbombthermaldamage.py deleted file mode 100644 index a12281fe2..000000000 --- a/eos/effects/systemsmartbombthermaldamage.py +++ /dev/null @@ -1,11 +0,0 @@ -# systemSmartBombThermalDamage -# -# Used by: -# Celestials named like: Red Giant Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Smart Bomb", - "thermalDamage", module.getModifiedItemAttr("smartbombDamageMultiplier")) diff --git a/eos/effects/systemstandardmissileemdamage.py b/eos/effects/systemstandardmissileemdamage.py deleted file mode 100644 index 5e6102aef..000000000 --- a/eos/effects/systemstandardmissileemdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemStandardMissileEmDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "emDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemstandardmissileexplosivedamage.py b/eos/effects/systemstandardmissileexplosivedamage.py deleted file mode 100644 index c53978cf5..000000000 --- a/eos/effects/systemstandardmissileexplosivedamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemStandardMissileExplosiveDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "explosiveDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemstandardmissilekineticdamage.py b/eos/effects/systemstandardmissilekineticdamage.py deleted file mode 100644 index 51c946fec..000000000 --- a/eos/effects/systemstandardmissilekineticdamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemStandardMissileKineticDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "kineticDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemstandardmissilethermaldamage.py b/eos/effects/systemstandardmissilethermaldamage.py deleted file mode 100644 index db5e7d254..000000000 --- a/eos/effects/systemstandardmissilethermaldamage.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemStandardMissileThermalDamage -# -# Used by: -# Celestials named like: Wolf Rayet Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill("Light Missiles"), - "thermalDamage", beacon.getModifiedItemAttr("smallWeaponDamageMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemtargetingrange.py b/eos/effects/systemtargetingrange.py deleted file mode 100644 index b54077e9d..000000000 --- a/eos/effects/systemtargetingrange.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemTargetingRange -# -# Used by: -# Celestials named like: Black Hole Effect Beacon Class (6 of 6) -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.ship.multiplyItemAttr("maxTargetRange", beacon.getModifiedItemAttr("maxTargetRangeMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemtargetpaintermultiplier.py b/eos/effects/systemtargetpaintermultiplier.py deleted file mode 100644 index 898111db9..000000000 --- a/eos/effects/systemtargetpaintermultiplier.py +++ /dev/null @@ -1,13 +0,0 @@ -# systemTargetPainterMultiplier -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Target Painting"), - "signatureRadiusBonus", - beacon.getModifiedItemAttr("targetPainterStrengthMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemtracking.py b/eos/effects/systemtracking.py deleted file mode 100644 index 6aff80eb7..000000000 --- a/eos/effects/systemtracking.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemTracking -# -# Used by: -# Celestials named like: Magnetar Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, module, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/systemwebifierstrengthmultiplier.py b/eos/effects/systemwebifierstrengthmultiplier.py deleted file mode 100644 index f45dca921..000000000 --- a/eos/effects/systemwebifierstrengthmultiplier.py +++ /dev/null @@ -1,12 +0,0 @@ -# systemWebifierStrengthMultiplier -# -# Used by: -# Celestials named like: Black Hole Effect Beacon Class (6 of 6) -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - fit.modules.filteredItemMultiply(lambda mod: mod.item.group.name == "Stasis Web", - "speedFactor", beacon.getModifiedItemAttr("stasisWebStrengthMultiplier"), - stackingPenalties=True, penaltyGroup="postMul") diff --git a/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py b/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py deleted file mode 100644 index 2c281449c..000000000 --- a/eos/effects/tacticalshieldmanipulationskillboostuniformitybonus.py +++ /dev/null @@ -1,9 +0,0 @@ -# tacticalshieldManipulationSkillBoostUniformityBonus -# -# Used by: -# Skill: Tactical Shield Manipulation -type = "passive" - - -def handler(fit, skill, context): - fit.ship.increaseItemAttr("shieldUniformity", skill.getModifiedItemAttr("uniformityBonus") * skill.level) diff --git a/eos/effects/targetabcattack.py b/eos/effects/targetabcattack.py deleted file mode 100644 index 66dac5bc6..000000000 --- a/eos/effects/targetabcattack.py +++ /dev/null @@ -1,10 +0,0 @@ -# targetABCAttack -# -# Used by: -# Modules from group: Precursor Weapon (15 of 15) -type = 'active' - - -def handler(fit, module, context): - # Set reload time to 1 second - module.reloadTime = 1000 diff --git a/eos/effects/targetattack.py b/eos/effects/targetattack.py deleted file mode 100644 index c0057acc5..000000000 --- a/eos/effects/targetattack.py +++ /dev/null @@ -1,11 +0,0 @@ -# targetAttack -# -# Used by: -# Drones from group: Combat Drone (75 of 75) -# Modules from group: Energy Weapon (212 of 214) -type = 'active' - - -def handler(fit, module, context): - # Set reload time to 1 second - module.reloadTime = 1000 diff --git a/eos/effects/targetbreaker.py b/eos/effects/targetbreaker.py deleted file mode 100644 index a9369bee5..000000000 --- a/eos/effects/targetbreaker.py +++ /dev/null @@ -1,9 +0,0 @@ -# targetBreaker -# -# Used by: -# Module: Target Spectrum Breaker -type = "active" - - -def handler(fit, module, context): - pass diff --git a/eos/effects/targethostiles.py b/eos/effects/targethostiles.py deleted file mode 100644 index 65664fa77..000000000 --- a/eos/effects/targethostiles.py +++ /dev/null @@ -1,10 +0,0 @@ -# targetHostiles -# -# Used by: -# Modules from group: Automated Targeting System (6 of 6) -type = "active" - - -def handler(fit, module, context): - # This effect enables the ACTIVE state for auto targeting systems. - pass diff --git a/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py b/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py deleted file mode 100644 index d7a2004e4..000000000 --- a/eos/effects/targetingmaxtargetbonusmodaddmaxlockedtargetslocationchar.py +++ /dev/null @@ -1,10 +0,0 @@ -# targetingMaxTargetBonusModAddMaxLockedTargetsLocationChar -# -# Used by: -# Skills named like: Target Management (2 of 2) -type = "passive", "structure" - - -def handler(fit, skill, context): - amount = skill.getModifiedItemAttr("maxTargetBonus") * skill.level - fit.extraAttributes.increase("maxTargetsLockedFromSkills", amount) diff --git a/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py b/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py deleted file mode 100644 index abb1ad0d7..000000000 --- a/eos/effects/thermalshieldcompensationhardeningbonusgroupshieldamp.py +++ /dev/null @@ -1,11 +0,0 @@ -# thermalShieldCompensationHardeningBonusGroupShieldAmp -# -# Used by: -# Skill: Thermal Shield Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Shield Resistance Amplifier", - "thermalDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py b/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py deleted file mode 100644 index 36790f342..000000000 --- a/eos/effects/thermicarmorcompensationhardeningbonusgrouparmorcoating.py +++ /dev/null @@ -1,11 +0,0 @@ -# thermicArmorCompensationHardeningBonusGroupArmorCoating -# -# Used by: -# Skill: Thermal Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Coating", - "thermalDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py b/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py deleted file mode 100644 index 8f33c77d7..000000000 --- a/eos/effects/thermicarmorcompensationhardeningbonusgroupenergized.py +++ /dev/null @@ -1,11 +0,0 @@ -# thermicArmorCompensationHardeningBonusGroupEnergized -# -# Used by: -# Skill: Thermal Armor Compensation -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Armor Plating Energized", - "thermalDamageResistanceBonus", - skill.getModifiedItemAttr("hardeningBonus") * skill.level) diff --git a/eos/effects/thermodynamicsskilldamagebonus.py b/eos/effects/thermodynamicsskilldamagebonus.py deleted file mode 100644 index 0386ad6e6..000000000 --- a/eos/effects/thermodynamicsskilldamagebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# thermodynamicsSkillDamageBonus -# -# Used by: -# Skill: Thermodynamics -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: "heatDamage" in mod.item.attributes, "heatDamage", - skill.getModifiedItemAttr("thermodynamicsHeatDamage") * skill.level) diff --git a/eos/effects/trackingspeedbonuseffecthybrids.py b/eos/effects/trackingspeedbonuseffecthybrids.py deleted file mode 100644 index 147d91b3c..000000000 --- a/eos/effects/trackingspeedbonuseffecthybrids.py +++ /dev/null @@ -1,11 +0,0 @@ -# trackingSpeedBonusEffectHybrids -# -# Used by: -# Modules named like: Hybrid Metastasis Adjuster (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Hybrid Weapon", - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True) diff --git a/eos/effects/trackingspeedbonuseffectlasers.py b/eos/effects/trackingspeedbonuseffectlasers.py deleted file mode 100644 index da849e037..000000000 --- a/eos/effects/trackingspeedbonuseffectlasers.py +++ /dev/null @@ -1,11 +0,0 @@ -# trackingSpeedBonusEffectLasers -# -# Used by: -# Modules named like: Energy Metastasis Adjuster (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Energy Weapon", - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True) diff --git a/eos/effects/trackingspeedbonuseffectprojectiles.py b/eos/effects/trackingspeedbonuseffectprojectiles.py deleted file mode 100644 index ed2c4d323..000000000 --- a/eos/effects/trackingspeedbonuseffectprojectiles.py +++ /dev/null @@ -1,11 +0,0 @@ -# trackingSpeedBonusEffectProjectiles -# -# Used by: -# Modules named like: Projectile Metastasis Adjuster (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Projectile Weapon", - "trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"), - stackingPenalties=True) diff --git a/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py b/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py deleted file mode 100644 index 6e1df7bcf..000000000 --- a/eos/effects/trackingspeedbonuspassiverequiringgunnerytrackingspeedbonus.py +++ /dev/null @@ -1,15 +0,0 @@ -# trackingSpeedBonusPassiveRequiringGunneryTrackingSpeedBonus -# -# Used by: -# Implants named like: Drop Booster (4 of 4) -# Implants named like: Eifyr and Co. 'Gunslinger' Motion Prediction MR (6 of 6) -# Implant: Antipharmakon Iokira -# Implant: Ogdin's Eye Coordination Enhancer -# Skill: Motion Prediction -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "trackingSpeed", container.getModifiedItemAttr("trackingSpeedBonus") * level) diff --git a/eos/effects/tractorbeamcan.py b/eos/effects/tractorbeamcan.py deleted file mode 100644 index 27517bdc0..000000000 --- a/eos/effects/tractorbeamcan.py +++ /dev/null @@ -1,10 +0,0 @@ -# tractorBeamCan -# -# Used by: -# Deployables from group: Mobile Tractor Unit (3 of 3) -# Modules from group: Tractor Beam (4 of 4) -type = "active" - - -def handler(fit, module, context): - pass diff --git a/eos/effects/usemissiles.py b/eos/effects/usemissiles.py deleted file mode 100644 index 7376dd563..000000000 --- a/eos/effects/usemissiles.py +++ /dev/null @@ -1,32 +0,0 @@ -# useMissiles -# -# Used by: -# Modules from group: Missile Launcher Heavy (12 of 12) -# Modules from group: Missile Launcher Rocket (15 of 15) -# Modules named like: Launcher (154 of 154) -# Structure Modules named like: Standup Launcher (7 of 7) -type = 'active', "projected" - - -def handler(fit, src, context): - # Set reload time to 10 seconds - src.reloadTime = 10000 - - if "projected" in context: - if src.item.group.name == 'Missile Launcher Bomb': - # Bomb Launcher Cooldown Timer - moduleReactivationDelay = src.getModifiedItemAttr("moduleReactivationDelay") - speed = src.getModifiedItemAttr("speed") - - # Void and Focused Void Bombs - neutAmount = src.getModifiedChargeAttr("energyNeutralizerAmount") - - if moduleReactivationDelay and neutAmount and speed: - fit.addDrain(src, speed + moduleReactivationDelay, neutAmount, 0) - - # Lockbreaker Bombs - ecmStrengthBonus = src.getModifiedChargeAttr("scan{0}StrengthBonus".format(fit.scanType)) - - if ecmStrengthBonus: - strModifier = 1 - ecmStrengthBonus / fit.scanStrength - fit.ecmProjectedStr *= strModifier diff --git a/eos/effects/velocitybonusonline.py b/eos/effects/velocitybonusonline.py deleted file mode 100644 index 5ffd1b9bb..000000000 --- a/eos/effects/velocitybonusonline.py +++ /dev/null @@ -1,12 +0,0 @@ -# velocityBonusOnline -# -# Used by: -# Modules from group: Entosis Link (6 of 6) -# Modules from group: Nanofiber Internal Structure (7 of 7) -# Modules from group: Overdrive Injector System (7 of 7) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("implantBonusVelocity"), - stackingPenalties=True) diff --git a/eos/effects/velocitybonuspassive.py b/eos/effects/velocitybonuspassive.py deleted file mode 100644 index 3d0b1c6d1..000000000 --- a/eos/effects/velocitybonuspassive.py +++ /dev/null @@ -1,10 +0,0 @@ -# velocityBonusPassive -# -# Used by: -# Modules named like: Polycarbon Engine Housing (8 of 8) -type = "passive" - - -def handler(fit, module, context): - fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("implantBonusVelocity"), - stackingPenalties=True) diff --git a/eos/effects/warfarelinkcpuaddition.py b/eos/effects/warfarelinkcpuaddition.py deleted file mode 100644 index 737970c42..000000000 --- a/eos/effects/warfarelinkcpuaddition.py +++ /dev/null @@ -1,10 +0,0 @@ -# warfareLinkCPUAddition -# -# Used by: -# Modules from group: Command Burst (10 of 10) -# Modules from group: Gang Coordinator (6 of 6) -type = "passive" - - -def handler(fit, module, context): - module.increaseItemAttr("cpu", module.getModifiedItemAttr("warfareLinkCPUAdd") or 0) diff --git a/eos/effects/warfarelinkcpupenalty.py b/eos/effects/warfarelinkcpupenalty.py deleted file mode 100644 index 894cc58df..000000000 --- a/eos/effects/warfarelinkcpupenalty.py +++ /dev/null @@ -1,10 +0,0 @@ -# warfareLinkCpuPenalty -# -# Used by: -# Subsystems from group: Offensive Systems (8 of 12) -type = "passive" - - -def handler(fit, module, context): - fit.modules.filteredItemIncrease(lambda mod: mod.item.requiresSkill("Leadership"), - "warfareLinkCPUAdd", module.getModifiedItemAttr("warfareLinkCPUPenalty")) diff --git a/eos/effects/warpdisrupt.py b/eos/effects/warpdisrupt.py deleted file mode 100644 index 38b53c1fc..000000000 --- a/eos/effects/warpdisrupt.py +++ /dev/null @@ -1,10 +0,0 @@ -# warpDisrupt -# -# Used by: -# Modules named like: Warp Disruptor (28 of 28) -type = "projected", "active" - - -def handler(fit, module, context): - if "projected" in context: - fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) diff --git a/eos/effects/warpdisruptsphere.py b/eos/effects/warpdisruptsphere.py deleted file mode 100644 index 5a5878fd4..000000000 --- a/eos/effects/warpdisruptsphere.py +++ /dev/null @@ -1,35 +0,0 @@ -# warpDisruptSphere -# -# Used by: -# Modules from group: Warp Disrupt Field Generator (7 of 7) - -# warpDisruptSphere -# -# Used by: -# Modules from group: Warp Disrupt Field Generator (7 of 7) -from eos.const import FittingModuleState - -type = "projected", "active" -runTime = "early" - - -def handler(fit, module, context): - - if "projected" in context: - fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) - if module.charge is not None and module.charge.ID == 45010: - for mod in fit.modules: - if not mod.isEmpty and mod.item.requiresSkill("High Speed Maneuvering") and mod.state > FittingModuleState.ONLINE: - mod.state = FittingModuleState.ONLINE - if not mod.isEmpty and mod.item.requiresSkill("Micro Jump Drive Operation") and mod.state > FittingModuleState.ONLINE: - mod.state = FittingModuleState.ONLINE - else: - if module.charge is None: - fit.ship.boostItemAttr("mass", module.getModifiedItemAttr("massBonusPercentage")) - fit.ship.boostItemAttr("signatureRadius", module.getModifiedItemAttr("signatureRadiusBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "speedBoostFactor", module.getModifiedItemAttr("speedBoostFactorBonus")) - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Propulsion Module", - "speedFactor", module.getModifiedItemAttr("speedFactorBonus")) - - fit.ship.forceItemAttr("disallowAssistance", 1) diff --git a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py b/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py deleted file mode 100644 index 8e8bd9cec..000000000 --- a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationship.py +++ /dev/null @@ -1,9 +0,0 @@ -# warpdriveoperationWarpCapacitorNeedBonusPostPercentWarpCapacitorNeedLocationShip -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' Warp Drive Operation WD (6 of 6) -type = "passive" - - -def handler(fit, implant, context): - fit.ship.boostItemAttr("warpCapacitorNeed", implant.getModifiedItemAttr("warpCapacitorNeedBonus")) diff --git a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py b/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py deleted file mode 100644 index f47c47264..000000000 --- a/eos/effects/warpdriveoperationwarpcapacitorneedbonuspostpercentwarpcapacitorneedlocationshipgrouppropulsion.py +++ /dev/null @@ -1,12 +0,0 @@ -# warpDriveOperationWarpCapacitorNeedBonusPostPercentWarpCapacitorNeedLocationShipGroupPropulsion -# -# Used by: -# Modules named like: Warp Core Optimizer (8 of 8) -# Skill: Warp Drive Operation -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.ship.boostItemAttr("warpCapacitorNeed", container.getModifiedItemAttr("warpCapacitorNeedBonus") * level, - stackingPenalties="skill" not in context) diff --git a/eos/effects/warpscrambleblockmwdwithnpceffect.py b/eos/effects/warpscrambleblockmwdwithnpceffect.py deleted file mode 100644 index 4b3ee34cb..000000000 --- a/eos/effects/warpscrambleblockmwdwithnpceffect.py +++ /dev/null @@ -1,25 +0,0 @@ -# warpScrambleBlockMWDWithNPCEffect -# -# Used by: -# Modules named like: Warp Scrambler (27 of 27) -from eos.const import FittingModuleState - -runTime = "early" -type = "projected", "active" - - -def handler(fit, module, context): - if "projected" not in context: - return - - fit.ship.increaseItemAttr("warpScrambleStatus", module.getModifiedItemAttr("warpScrambleStrength")) - - # this is such a dirty hack - for mod in fit.modules: - if not mod.isEmpty and mod.state > FittingModuleState.ONLINE and ( - mod.item.requiresSkill("Micro Jump Drive Operation") or - mod.item.requiresSkill("High Speed Maneuvering") - ): - mod.state = FittingModuleState.ONLINE - if not mod.isEmpty and mod.item.requiresSkill("Micro Jump Drive Operation") and mod.state > FittingModuleState.ONLINE: - mod.state = FittingModuleState.ONLINE diff --git a/eos/effects/warpskillspeed.py b/eos/effects/warpskillspeed.py deleted file mode 100644 index 57174c39d..000000000 --- a/eos/effects/warpskillspeed.py +++ /dev/null @@ -1,13 +0,0 @@ -# warpSkillSpeed -# -# Used by: -# Implants named like: Eifyr and Co. 'Rogue' Warp Drive Speed WS (6 of 6) -# Implants named like: grade Ascendancy (10 of 12) -# Modules named like: Hyperspatial Velocity Optimizer (8 of 8) -type = "passive" - - -def handler(fit, container, context): - penalized = False if "skill" in context or "implant" in context else True - fit.ship.boostItemAttr("baseWarpSpeed", container.getModifiedItemAttr("WarpSBonus"), - stackingPenalties=penalized) diff --git a/eos/effects/warpspeedaddition.py b/eos/effects/warpspeedaddition.py deleted file mode 100644 index 1350c3a85..000000000 --- a/eos/effects/warpspeedaddition.py +++ /dev/null @@ -1,9 +0,0 @@ -# warpSpeedAddition -# -# Used by: -# Modules from group: Warp Accelerator (3 of 3) -type = "passive" - - -def handler(fit, module, context): - fit.ship.increaseItemAttr("warpSpeedMultiplier", module.getModifiedItemAttr("warpSpeedAdd")) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py deleted file mode 100644 index 72f944de7..000000000 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringbomblauncher.py +++ /dev/null @@ -1,10 +0,0 @@ -# weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringBombLauncher -# -# Used by: -# Skill: Weapon Upgrades -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Bomb Deployment"), - "cpu", skill.getModifiedItemAttr("cpuNeedBonus") * skill.level) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py deleted file mode 100644 index 9fcfb86fe..000000000 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringenergypulseweapons.py +++ /dev/null @@ -1,10 +0,0 @@ -# weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringEnergyPulseWeapons -# -# Used by: -# Skill: Weapon Upgrades -type = "passive" - - -def handler(fit, skill, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Energy Pulse Weapons"), - "cpu", skill.getModifiedItemAttr("cpuNeedBonus") * skill.level) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py deleted file mode 100644 index 13126e2a5..000000000 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringgunnery.py +++ /dev/null @@ -1,12 +0,0 @@ -# weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringGunnery -# -# Used by: -# Implants named like: Zainou 'Gnome' Weapon Upgrades WU (6 of 6) -# Skill: Weapon Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"), - "cpu", container.getModifiedItemAttr("cpuNeedBonus") * level) diff --git a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py b/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py deleted file mode 100644 index d64e19944..000000000 --- a/eos/effects/weaponupgradescpuneedbonuspostpercentcpulocationshipmodulesrequiringmissilelauncheroperation.py +++ /dev/null @@ -1,12 +0,0 @@ -# weaponUpgradesCpuNeedBonusPostPercentCpuLocationShipModulesRequiringMissileLauncherOperation -# -# Used by: -# Implants named like: Zainou 'Gnome' Launcher CPU Efficiency LE (6 of 6) -# Skill: Weapon Upgrades -type = "passive" - - -def handler(fit, container, context): - level = container.level if "skill" in context else 1 - fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Missile Launcher Operation"), - "cpu", container.getModifiedItemAttr("cpuNeedBonus") * level) diff --git a/eos/effects/weatherbasic.py b/eos/effects/weatherbasic.py deleted file mode 100644 index 61b26655c..000000000 --- a/eos/effects/weatherbasic.py +++ /dev/null @@ -1,10 +0,0 @@ -# weather_basic -# -# Used by: -# Celestial: basic_weather -runTime = "early" -type = ("projected", "passive") - - -def handler(fit, beacon, context): - pass diff --git a/eos/effects/weathercaustictoxin.py b/eos/effects/weathercaustictoxin.py deleted file mode 100644 index c13489860..000000000 --- a/eos/effects/weathercaustictoxin.py +++ /dev/null @@ -1,18 +0,0 @@ -# weather_caustic_toxin -# -# Used by: -# Celestial: caustic_toxin_weather_1 -# Celestial: caustic_toxin_weather_2 -# Celestial: caustic_toxin_weather_3 -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/weatherdarkness.py b/eos/effects/weatherdarkness.py deleted file mode 100644 index c67b7924d..000000000 --- a/eos/effects/weatherdarkness.py +++ /dev/null @@ -1,18 +0,0 @@ -# weather_darkness -# -# Used by: -# Celestial: darkness_weather_1 -# Celestial: darkness_weather_2 -# Celestial: darkness_weather_3 -# Celestial: pvp_weather_1 -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 5): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/weatherelectricstorm.py b/eos/effects/weatherelectricstorm.py deleted file mode 100644 index b6e78935f..000000000 --- a/eos/effects/weatherelectricstorm.py +++ /dev/null @@ -1,18 +0,0 @@ -# weather_electric_storm -# -# Used by: -# Celestial: electric_storm_weather_1 -# Celestial: electric_storm_weather_2 -# Celestial: electric_storm_weather_3 -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/weatherinfernal.py b/eos/effects/weatherinfernal.py deleted file mode 100644 index 9ddfe1a30..000000000 --- a/eos/effects/weatherinfernal.py +++ /dev/null @@ -1,18 +0,0 @@ -# weather_infernal -# -# Used by: -# Celestial: infernal_weather_1 -# Celestial: infernal_weather_2 -# Celestial: infernal_weather_3 -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/weatherxenongas.py b/eos/effects/weatherxenongas.py deleted file mode 100644 index 913a7de2b..000000000 --- a/eos/effects/weatherxenongas.py +++ /dev/null @@ -1,18 +0,0 @@ -# weather_xenon_gas -# -# Used by: -# Celestial: xenon_gas_weather_1 -# Celestial: xenon_gas_weather_2 -# Celestial: xenon_gas_weather_3 -runTime = "early" -type = ("projected", "passive", "gang") - - -def handler(fit, beacon, context, **kwargs): - for x in range(1, 3): - if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)): - value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x)) - id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)) - - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') diff --git a/eos/effects/zcolinorcasurveyscannerbonus.py b/eos/effects/zcolinorcasurveyscannerbonus.py deleted file mode 100644 index a1eb01fea..000000000 --- a/eos/effects/zcolinorcasurveyscannerbonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# zColinOrcaSurveyScannerBonus -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Survey Scanner", "surveyScanRange", - src.getModifiedItemAttr("roleBonusSurveyScannerRange")) diff --git a/eos/effects/zcolinorcatractorrangebonus.py b/eos/effects/zcolinorcatractorrangebonus.py deleted file mode 100644 index 9c4a20c03..000000000 --- a/eos/effects/zcolinorcatractorrangebonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# zColinOrcaTractorRangeBonus -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, src, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", "maxRange", - src.getModifiedItemAttr("roleBonusTractorBeamRange")) diff --git a/eos/effects/zcolinorcatractorvelocitybonus.py b/eos/effects/zcolinorcatractorvelocitybonus.py deleted file mode 100644 index 736643324..000000000 --- a/eos/effects/zcolinorcatractorvelocitybonus.py +++ /dev/null @@ -1,10 +0,0 @@ -# zColinOrcaTractorVelocityBonus -# -# Used by: -# Ships from group: Industrial Command Ship (2 of 2) -type = "passive" - - -def handler(fit, ship, context): - fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == "Tractor Beam", "maxTractorVelocity", - ship.getModifiedItemAttr("roleBonusTractorBeamVelocity")) diff --git a/eos/events.py b/eos/events.py index dd4b07b79..7a8ffce18 100644 --- a/eos/events.py +++ b/eos/events.py @@ -58,7 +58,6 @@ def rel_listener(target, value, initiator): if not target or (isinstance(value, Module) and value.isEmpty): return - print("{} has had a relationship change :D".format(target)) target.modified = datetime.datetime.now() diff --git a/eos/gamedata.py b/eos/gamedata.py index 1abb3f69b..a2f4962dc 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -17,17 +17,17 @@ # along with eos. If not, see . # =============================================================================== -import re -from sqlalchemy.orm import reconstructor - -import eos.db -from .eqBase import EqBase -from eos.saveddata.price import Price as types_Price from collections import OrderedDict - from logbook import Logger +from sqlalchemy.orm import reconstructor + +import eos.effects +import eos.db +from eos.saveddata.price import Price as types_Price +from .eqBase import EqBase + pyfalog = Logger(__name__) @@ -43,8 +43,6 @@ class Effect(EqBase): @ivar description: The description of this effect, this is usualy pretty useless @ivar published: Wether this effect is published or not, unpublished effects are typicaly unused. """ - # Filter to change names of effects to valid python method names - nameFilter = re.compile("[^A-Za-z0-9]") @reconstructor def init(self): @@ -52,8 +50,7 @@ class Effect(EqBase): Reconstructor, composes the object as we grab it from the database """ self.__generated = False - self.__effectModule = None - self.handlerName = re.sub(self.nameFilter, "", self.name).lower() + self.__effectDef = None @property def handler(self): @@ -143,7 +140,7 @@ class Effect(EqBase): Whether this effect is implemented in code or not, unimplemented effects simply do nothing at all when run """ - return self.handler != effectDummy + return self.__effectDef is not None def isType(self, type): """ @@ -156,32 +153,32 @@ class Effect(EqBase): Grab the handler, type and runTime from the effect code if it exists, if it doesn't, set dummy values and add a dummy handler """ - try: - self.__effectModule = effectModule = __import__('eos.effects.' + self.handlerName, fromlist=True) - self.__handler = getattr(effectModule, "handler", effectDummy) - self.__runTime = getattr(effectModule, "runTime", "normal") - self.__activeByDefault = getattr(effectModule, "activeByDefault", True) - t = getattr(effectModule, "type", None) - - t = t if isinstance(t, tuple) or t is None else (t,) - self.__type = t + effectDefName = "Effect{}".format(self.ID) + pyfalog.debug("Loading {0} ({1})".format(self.name, effectDefName)) + self.__effectDef = effectDef = getattr(eos.effects, effectDefName) + self.__handler = getattr(effectDef, "handler", eos.effects.BaseEffect.handler) + self.__runTime = getattr(effectDef, "runTime", "normal") + self.__activeByDefault = getattr(effectDef, "activeByDefault", True) + effectType = getattr(effectDef, "type", None) + effectType = effectType if isinstance(effectType, tuple) or effectType is None else (effectType,) + self.__type = effectType except ImportError as e: # Effect probably doesn't exist, so create a dummy effect and flag it with a warning. - self.__handler = effectDummy + self.__handler = eos.effects.DummyEffect.handler self.__runTime = "normal" self.__activeByDefault = True self.__type = None pyfalog.debug("ImportError generating handler: {0}", e) except AttributeError as e: # Effect probably exists but there is an issue with it. Turn it into a dummy effect so we can continue, but flag it with an error. - self.__handler = effectDummy + self.__handler = eos.effects.DummyEffect.handler self.__runTime = "normal" self.__activeByDefault = True self.__type = None pyfalog.error("AttributeError generating handler: {0}", e) except Exception as e: - self.__handler = effectDummy + self.__handler = eos.effects.DummyEffect.handler self.__runTime = "normal" self.__activeByDefault = True self.__type = None @@ -194,11 +191,10 @@ class Effect(EqBase): if not self.__generated: self.__generateHandler() - return getattr(self.__effectModule, key, None) - - -def effectDummy(*args, **kwargs): - pass + try: + return self.__effectDef.get(key, None) + except: + return getattr(self.__effectDef, key, None) class Item(EqBase): diff --git a/eos/saveddata/boosterSideEffect.py b/eos/saveddata/boosterSideEffect.py index ad0814928..32c467232 100644 --- a/eos/saveddata/boosterSideEffect.py +++ b/eos/saveddata/boosterSideEffect.py @@ -57,7 +57,7 @@ class BoosterSideEffect(object): def name(self): return "{0}% {1}".format( self.booster.getModifiedItemAttr(self.attr), - self.__effect.getattr('displayName') or self.__effect.handlerName, + self.__effect.getattr('displayName') or self.__effect.name, ) @property diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index 8024b0681..46cf2e6c8 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -56,7 +56,7 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): standardAttackActive = False for ability in self.abilities: - if ability.effect.isImplemented and ability.effect.handlerName == 'fighterabilityattackm': + if ability.effect.isImplemented and ability.effect.name == 'fighterAbilityAttackM': # Activate "standard attack" if available ability.active = True standardAttackActive = True @@ -64,8 +64,8 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): # Activate all other abilities (Neut, Web, etc) except propmods if no standard attack is active if ability.effect.isImplemented and \ standardAttackActive is False and \ - ability.effect.handlerName != 'fighterabilitymicrowarpdrive' and \ - ability.effect.handlerName != 'fighterabilityevasivemaneuvers': + ability.effect.name != 'fighterAbilityMicroWarpDrive' and \ + ability.effect.name != 'fighterAbilityEvasiveManeuvers': ability.active = True @reconstructor diff --git a/eos/saveddata/fighterAbility.py b/eos/saveddata/fighterAbility.py index 684ceec94..f9cfb608f 100644 --- a/eos/saveddata/fighterAbility.py +++ b/eos/saveddata/fighterAbility.py @@ -73,7 +73,7 @@ class FighterAbility(object): @property def name(self): - return self.__effect.getattr('displayName') or self.__effect.handlerName + return self.__effect.getattr('displayName') or self.__effect.name @property def attrPrefix(self): diff --git a/gui/bitmap_loader.py b/gui/bitmap_loader.py index 042a6674b..09591b32a 100644 --- a/gui/bitmap_loader.py +++ b/gui/bitmap_loader.py @@ -27,7 +27,8 @@ from logbook import Logger import config -logging = Logger(__name__) + +pyfalog = Logger(__name__) class BitmapLoader(object): @@ -38,7 +39,7 @@ class BitmapLoader(object): # logging.info("Using local image files.") # archive = None - logging.info("Using local image files.") + pyfalog.info("Using local image files.") archive = None cached_bitmaps = OrderedDict() @@ -93,7 +94,7 @@ class BitmapLoader(object): filename, img = cls.loadScaledBitmap(name, location, scale) if img is None: - print(("Missing icon file: {0}/{1}".format(location, filename))) + pyfalog.warning("Missing icon file: {0}/{1}".format(location, filename)) return None bmp: wx.Bitmap = img.ConvertToBitmap() @@ -130,7 +131,7 @@ class BitmapLoader(object): sbuf = io.StringIO(img_data) return wx.ImageFromStream(sbuf) except KeyError: - print(("Missing icon file from zip: {0}".format(path))) + pyfalog.warning("Missing icon file from zip: {0}".format(path)) else: path = os.path.join(config.pyfaPath, 'imgs' + os.sep + location + os.sep + filename) diff --git a/gui/builtinAdditionPanes/boosterView.py b/gui/builtinAdditionPanes/boosterView.py index eda07eb5e..e050d853a 100644 --- a/gui/builtinAdditionPanes/boosterView.py +++ b/gui/builtinAdditionPanes/boosterView.py @@ -108,10 +108,10 @@ class BoosterView(d.Display): event.Skip() return - self.origional = fit.boosters if fit is not None else None - self.boosters = stuff = fit.boosters[:] if fit is not None else None - if stuff is not None: - stuff.sort(key=lambda booster: booster.slot or 0) + self.original = fit.boosters if fit is not None else None + self.boosters = fit.boosters[:] if fit is not None else None + if self.boosters is not None: + self.boosters.sort(key=lambda booster: booster.slot or 0) if event.fitID != self.lastFitId: @@ -124,8 +124,8 @@ class BoosterView(d.Display): self.deselectItems() - self.populate(stuff) - self.refresh(stuff) + self.populate(self.boosters) + self.refresh(self.boosters) event.Skip() def addItem(self, event): @@ -152,7 +152,7 @@ class BoosterView(d.Display): def removeBooster(self, booster): fitID = self.mainFrame.getActiveFit() - self.mainFrame.command.Submit(cmd.GuiRemoveBoosterCommand(fitID, self.origional.index(booster))) + self.mainFrame.command.Submit(cmd.GuiRemoveBoosterCommand(fitID, self.original.index(booster))) def click(self, event): event.Skip() @@ -172,8 +172,7 @@ class BoosterView(d.Display): sel = self.GetFirstSelected() if sel != -1: sFit = Fit.getInstance() - fit = sFit.getFit(self.mainFrame.getActiveFit()) - item = fit.boosters[sel] + item = self.boosters[sel] srcContext = "boosterItem" itemContext = "Booster" diff --git a/gui/builtinAdditionPanes/droneView.py b/gui/builtinAdditionPanes/droneView.py index 2918c5aa4..9da438953 100644 --- a/gui/builtinAdditionPanes/droneView.py +++ b/gui/builtinAdditionPanes/droneView.py @@ -162,8 +162,7 @@ class DroneView(Display): wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) DRONE_ORDER = ('Light Scout Drones', 'Medium Scout Drones', - 'Heavy Attack Drones', 'Sentry Drones', 'Fighters', - 'Fighter Bombers', 'Combat Utility Drones', + 'Heavy Attack Drones', 'Sentry Drones', 'Combat Utility Drones', 'Electronic Warfare Drones', 'Logistic Drones', 'Mining Drones', 'Salvage Drones') def droneKey(self, drone): diff --git a/gui/builtinAdditionPanes/fighterView.py b/gui/builtinAdditionPanes/fighterView.py index af98a46ed..f9025851b 100644 --- a/gui/builtinAdditionPanes/fighterView.py +++ b/gui/builtinAdditionPanes/fighterView.py @@ -220,20 +220,12 @@ class FighterDisplay(d.Display): def _merge(src, dst): return - ''' - DRONE_ORDER = ('Light Scout Drones', 'Medium Scout Drones', - 'Heavy Attack Drones', 'Sentry Drones', 'Fighters', - 'Fighter Bombers', 'Combat Utility Drones', - 'Electronic Warfare Drones', 'Logistic Drones', 'Mining Drones', 'Salvage Drones', - 'Light Fighters', 'Heavy Fighters', 'Support Fighters') - def droneKey(self, drone): - sMkt = Market.getInstance() + FIGHTER_ORDER = ('Heavy Fighter', 'Light Fighter', 'Support Fighter') - groupName = sMkt.getMarketGroupByItem(drone.item).name - print groupName - return (self.DRONE_ORDER.index(groupName), - drone.item.name) - ''' + def fighterKey(self, fighter): + sMkt = Market.getInstance() + groupName = sMkt.getGroupByItem(fighter.item).name + return (self.FIGHTER_ORDER.index(groupName), fighter.item.name) def fitChanged(self, event): sFit = Fit.getInstance() @@ -249,12 +241,10 @@ class FighterDisplay(d.Display): return self.original = fit.fighters if fit is not None else None - self.fighters = stuff = fit.fighters[:] if fit is not None else None + self.fighters = fit.fighters[:] if fit is not None else None - ''' - if stuff is not None: - stuff.sort(key=self.droneKey) - ''' + if self.fighters is not None: + self.fighters.sort(key=self.fighterKey) if event.fitID != self.lastFitId: self.lastFitId = event.fitID @@ -266,7 +256,7 @@ class FighterDisplay(d.Display): self.deselectItems() - self.update(stuff) + self.update(self.fighters) event.Skip() def addItem(self, event): diff --git a/gui/builtinAdditionPanes/projectedView.py b/gui/builtinAdditionPanes/projectedView.py index 1b941fd83..59d046761 100644 --- a/gui/builtinAdditionPanes/projectedView.py +++ b/gui/builtinAdditionPanes/projectedView.py @@ -129,8 +129,10 @@ class ProjectedView(d.Display): sFit = Fit.getInstance() row = self.GetFirstSelected() if row != -1: - sFit.removeProjected(fitID, self.get(row)) - wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) + thing = self.get(row) + if thing: + sFit.removeProjected(fitID, self.get(row)) + wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) def handleDrag(self, type, fitID): # Those are drags coming from pyfa sources, NOT builtin wx drags diff --git a/gui/builtinContextMenus/factorReload.py b/gui/builtinContextMenus/factorReload.py index 5600c4c5c..c70028efc 100644 --- a/gui/builtinContextMenus/factorReload.py +++ b/gui/builtinContextMenus/factorReload.py @@ -29,12 +29,9 @@ class FactorReload(ContextMenu): sFit.refreshFit(fitID) wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) - def getBitmap(self, context, selection): + @property + def checked(self): sFit = Fit.getInstance() - if sFit.serviceFittingOptions["useGlobalForceReload"]: - return BitmapLoader.getBitmap("state_active_small", "gui") - else: - return None - + return sFit.serviceFittingOptions["useGlobalForceReload"] FactorReload.register() diff --git a/gui/builtinContextMenus/metaSwap.py b/gui/builtinContextMenus/metaSwap.py index d9a34599e..edab076bf 100644 --- a/gui/builtinContextMenus/metaSwap.py +++ b/gui/builtinContextMenus/metaSwap.py @@ -117,11 +117,12 @@ class MetaSwap(ContextMenu): id = ContextMenu.nextID() mitem = wx.MenuItem(rootMenu, id, item.name) - mitem.Enable(fit.canFit(item)) bindmenu.Bind(wx.EVT_MENU, self.handleModule, mitem) self.moduleLookup[id] = item, context m.Append(mitem) + mitem.Enable(fit.canFit(item)) + return m def handleModule(self, event): diff --git a/gui/builtinItemStatsViews/attributeGrouping.py b/gui/builtinItemStatsViews/attributeGrouping.py index c93e97010..6780c176c 100644 --- a/gui/builtinItemStatsViews/attributeGrouping.py +++ b/gui/builtinItemStatsViews/attributeGrouping.py @@ -207,8 +207,15 @@ AttrGroupDict = { "fighterSquadronOrbitRange", ] }, + GuiAttrGroup.SHIP_GROUP : { + "label" : "Can Fit To", + "attributes": [] + }, } +AttrGroupDict[GuiAttrGroup.SHIP_GROUP]["attributes"].extend([("canFitShipGroup{:02d}".format(i+1), "Group") for i in range(20)]) +AttrGroupDict[GuiAttrGroup.SHIP_GROUP]["attributes"].extend([("canFitShipType{:01d}".format(i+1), "Ship") for i in range(20)]) + Group1 = [ GuiAttrGroup.FITTING, GuiAttrGroup.STRUCTURE, @@ -222,6 +229,7 @@ Group1 = [ GuiAttrGroup.ON_DEATH, GuiAttrGroup.JUMP_SYSTEMS, GuiAttrGroup.PROPULSIONS, + GuiAttrGroup.SHIP_GROUP ] CategoryGroups = { diff --git a/gui/builtinItemStatsViews/itemAttributes.py b/gui/builtinItemStatsViews/itemAttributes.py index 20065b6b0..324e64c22 100644 --- a/gui/builtinItemStatsViews/itemAttributes.py +++ b/gui/builtinItemStatsViews/itemAttributes.py @@ -173,9 +173,15 @@ class ItemParams(wx.Panel): self.paramList.AssignImageList(self.imageList) def AddAttribute(self, parent, attr): + display = None + + if isinstance(attr, tuple): + display = attr[1] + attr = attr[0] + if attr in self.attrValues and attr not in self.processed_attribs: - data = self.GetData(attr) + data = self.GetData(attr, display) if data is None: return @@ -203,7 +209,7 @@ class ItemParams(wx.Panel): misc_parent = root # We must first deet4ermine if it's categorey already has defined groupings set for it. Otherwise, we default to just using the fitting group - order = CategoryGroups.get(self.item.category.categoryName, [GuiAttrGroup.FITTING]) + order = CategoryGroups.get(self.item.category.categoryName, [GuiAttrGroup.FITTING, GuiAttrGroup.SHIP_GROUP]) # start building out the tree for data in [AttrGroupDict[o] for o in order]: heading = data.get("label") @@ -256,7 +262,7 @@ class ItemParams(wx.Panel): for i in range(self.paramList.GetMainWindow().GetColumnCount()): self.paramList.SetColumnWidth(i, wx.LIST_AUTOSIZE) - def GetData(self, attr): + def GetData(self, attr, displayOveride = None): info = self.attrInfo.get(attr) att = self.attrValues[attr] @@ -275,7 +281,7 @@ class ItemParams(wx.Panel): return None if info and info.displayName and self.toggleView == AttributeView.NORMAL: - attrName = info.displayName + attrName = displayOveride or info.displayName else: attrName = attr diff --git a/gui/builtinItemStatsViews/itemEffects.py b/gui/builtinItemStatsViews/itemEffects.py index 37b37c608..0b87a0cbd 100644 --- a/gui/builtinItemStatsViews/itemEffects.py +++ b/gui/builtinItemStatsViews/itemEffects.py @@ -21,8 +21,6 @@ class ItemEffects(wx.Panel): self.SetSizer(mainSizer) self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnClick, self.effectList) - if config.debug: - self.Bind(wx.EVT_LIST_ITEM_RIGHT_CLICK, self.OnRightClick, self.effectList) self.PopulateList() @@ -100,26 +98,6 @@ class ItemEffects(wx.Panel): self.RefreshValues(event) - def OnRightClick(self, event): - """ - Debug use: open effect file with default application. - If effect file does not exist, create it - """ - - effect = self.effects[event.GetText()] - - file_ = os.path.join(config.pyfaPath, "eos", "effects", "%s.py" % effect.handlerName) - - if not os.path.isfile(file_): - open(file_, 'a').close() - - if 'wxMSW' in wx.PlatformInfo: - os.startfile(file_) - elif 'wxMac' in wx.PlatformInfo: - os.system("open " + file_) - else: - subprocess.call(["xdg-open", file_]) - def RefreshValues(self, event): self.Freeze() self.effectList.ClearAll() diff --git a/gui/builtinMarketBrowser/itemView.py b/gui/builtinMarketBrowser/itemView.py index 258c8800f..97db645d7 100644 --- a/gui/builtinMarketBrowser/itemView.py +++ b/gui/builtinMarketBrowser/itemView.py @@ -202,7 +202,7 @@ class ItemView(Display): mktgrpid = sMkt.getMarketGroupByItem(item).ID except AttributeError: mktgrpid = -1 - print(("unable to find market group for", item.name)) + pyfalog.warning("unable to find market group for {}".format(item.name)) parentname = sMkt.getParentItemByItem(item).name # Get position of market group metagrpid = sMkt.getMetaGroupIdByItem(item) diff --git a/gui/builtinViews/fittingView.py b/gui/builtinViews/fittingView.py index 97ba7d8f6..9801f4af0 100644 --- a/gui/builtinViews/fittingView.py +++ b/gui/builtinViews/fittingView.py @@ -82,7 +82,7 @@ class FitSpawner(gui.multiSwitch.TabSpawner): if not isinstance(view, FittingView): view = FittingView(self.multiSwitch) - print("###################### Created new view:" + repr(view)) + pyfalog.debug("###################### Created new view:" + repr(view)) self.multiSwitch.ReplaceActivePage(view) view.fitSelected(event) @@ -174,8 +174,8 @@ class FittingView(d.Display): self.Bind(wx.EVT_MOTION, self.OnMouseMove) self.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow) self.parent.Bind(EVT_NOTEBOOK_PAGE_CHANGED, self.pageChanged) - print("------------------ new fitting view -------------------") - print(self) + pyfalog.debug("------------------ new fitting view -------------------") + pyfalog.debug(self) def OnLeaveWindow(self, event): self.SetToolTip(None) @@ -224,16 +224,7 @@ class FittingView(d.Display): wx.PostEvent(self.mainFrame, FitSelected(fitID=fitID)) def Destroy(self): - # @todo: when wxPython 4.0.2 is release, https://github.com/pyfa-org/Pyfa/issues/1586#issuecomment-390074915 - # Make sure to remove the shitty checks that I have to put in place for these handlers to ignore when self is None - print("+++++ Destroy " + repr(self)) - - # print(self.parent.Unbind(EVT_NOTEBOOK_PAGE_CHANGED)) - # print(self.mainFrame.Unbind(GE.FIT_CHANGED, handler=self.fitChanged)) - # print(self.mainFrame.Unbind(EVT_FIT_RENAMED, handler=self.fitRenamed )) - # print(self.mainFrame.Unbind(EVT_FIT_REMOVED, handler=self.fitRemoved)) - # print(self.mainFrame.Unbind(ITEM_SELECTED, handler=self.appendItem)) - + pyfalog.debug("+++++ Destroy " + repr(self)) d.Display.Destroy(self) def pageChanged(self, event): @@ -296,7 +287,6 @@ class FittingView(d.Display): delete fit caused change in stats (projected) todo: move this to the notebook, not the page. We don't want the page being responsible for deleting itself """ - print('_+_+_+_+_+_ Fit Removed: {} {} activeFitID: {}, eventFitID: {}'.format(repr(self), str(bool(self)), self.activeFitID, event.fitID)) pyfalog.debug("FittingView::fitRemoved") if not self: event.Skip() @@ -331,7 +321,7 @@ class FittingView(d.Display): event.Skip() def fitSelected(self, event): - print('====== Fit Selected: ' + repr(self) + str(bool(self))) + pyfalog.debug('====== Fit Selected: ' + repr(self) + str(bool(self))) if self.parent.IsActive(self): fitID = event.fitID diff --git a/gui/contextMenu.py b/gui/contextMenu.py index b479ab913..ec9048429 100644 --- a/gui/contextMenu.py +++ b/gui/contextMenu.py @@ -79,7 +79,8 @@ class ContextMenu(object): multiple = not isinstance(bitmap, wx.Bitmap) for it, text in enumerate(texts): id = cls.nextID() - rootItem = wx.MenuItem(rootMenu, id, text) + check = m.checked + rootItem = wx.MenuItem(rootMenu, id, text, kind=wx.ITEM_NORMAL if m.checked is None else wx.ITEM_CHECK) rootMenu.info[id] = (m, fullContext, it) sub = m.getSubMenu(srcContext, selection, rootMenu, it, rootItem) @@ -114,6 +115,9 @@ class ContextMenu(object): rootMenu.Append(rootItem) + if check is not None: + rootItem.Check(check) + empty = False if display_amount > 0 and i != len(fullContexts) - 1: @@ -177,6 +181,10 @@ class ContextMenu(object): def getBitmap(self, context, selection): return None + @property + def checked(self): + '''If menu item is toggleable, this should return bool value''' + return None # noinspection PyUnresolvedReferences from gui.builtinContextMenus import ( # noqa: E402,F401 diff --git a/gui/copySelectDialog.py b/gui/copySelectDialog.py index 985b98d01..55b02e535 100644 --- a/gui/copySelectDialog.py +++ b/gui/copySelectDialog.py @@ -174,7 +174,7 @@ class CopySelectDialog(wx.Dialog): def exportXml(self, options, callback): fit = getFit(self.mainFrame.getActiveFit()) - Port.exportXml(None, fit, callback) + Port.exportXml([fit], None, callback) def exportMultiBuy(self, options, callback): fit = getFit(self.mainFrame.getActiveFit()) @@ -182,4 +182,4 @@ class CopySelectDialog(wx.Dialog): def exportEfs(self, options, callback): fit = getFit(self.mainFrame.getActiveFit()) - EfsPort.exportEfs(fit, 0, callback) \ No newline at end of file + EfsPort.exportEfs(fit, 0, callback) diff --git a/gui/graphFrame.py b/gui/graphFrame.py index a36c9c66a..1ea9b86c3 100644 --- a/gui/graphFrame.py +++ b/gui/graphFrame.py @@ -93,8 +93,8 @@ class GraphFrame(wx.Frame): graphFrame_enabled = True if int(mpl.__version__[0]) < 1: - print(("pyfa: Found matplotlib version ", mpl.__version__, " - activating OVER9000 workarounds")) - print("pyfa: Recommended minimum matplotlib version is 1.0.0") + pyfalog.warning("pyfa: Found matplotlib version {} - activating OVER9000 workarounds".format(mpl.__version__)) + pyfalog.warning("pyfa: Recommended minimum matplotlib version is 1.0.0") self.legendFix = True mplImported = True diff --git a/gui/mainFrame.py b/gui/mainFrame.py index 3d17f9f65..a185bc96a 100644 --- a/gui/mainFrame.py +++ b/gui/mainFrame.py @@ -73,17 +73,18 @@ from service.settings import HTMLExportSettings, SettingsProvider from service.update import Update import gui.fitCommands as cmd + +pyfalog = Logger(__name__) + disableOverrideEditor = False try: from gui.propertyEditor import AttributeEditor except ImportError as e: AttributeEditor = None - print(("Error loading Attribute Editor: %s.\nAccess to Attribute Editor is disabled." % e.message)) + pyfalog.warning("Error loading Attribute Editor: %s.\nAccess to Attribute Editor is disabled." % e.message) disableOverrideEditor = True -pyfalog = Logger(__name__) - pyfalog.debug("Done loading mainframe imports") @@ -417,11 +418,11 @@ class MainFrame(wx.Frame): format_ = dlg.GetFilterIndex() path = dlg.GetPath() if format_ == 0: - output = Port.exportXml(None, fit) + output = Port.exportXml([fit], None) if '.' not in os.path.basename(path): path += ".xml" else: - print(("oops, invalid fit format %d" % format_)) + pyfalog.warning("oops, invalid fit format %d" % format_) try: dlg.Destroy() except RuntimeError: diff --git a/gui/utils/exportHtml.py b/gui/utils/exportHtml.py index 608b52396..ab8fa9107 100644 --- a/gui/utils/exportHtml.py +++ b/gui/utils/exportHtml.py @@ -68,7 +68,7 @@ class exportHtmlThread(threading.Thread): FILE.write(HTML) FILE.close() except IOError as ex: - print(("Failed to write to " + settings.getPath())) + pyfalog.warning("Failed to write to " + settings.getPath()) pass except Exception as ex: pass diff --git a/pyfa.spec b/pyfa.spec index d3156bb80..4f4dda6c7 100644 --- a/pyfa.spec +++ b/pyfa.spec @@ -55,7 +55,7 @@ import_these = [ ] # Walk directories that do dynamic importing -paths = ('eos/effects', 'eos/db/migrations', 'service/conversions') +paths = ('eos/db/migrations', 'service/conversions') for root, folders, files in chain.from_iterable(os.walk(path) for path in paths): for file_ in files: if file_.endswith(".py") and not file_.startswith("_"): diff --git a/scripts/effectUsedBy.py b/scripts/effectUsedBy.py index aa5f878b3..4f239004b 100755 --- a/scripts/effectUsedBy.py +++ b/scripts/effectUsedBy.py @@ -60,19 +60,13 @@ from optparse import OptionParser script_dir = os.path.dirname(__file__) # Form list of effects for processing -effects_path = os.path.join(script_dir, "..", "eos", "effects") +effects_path = os.path.join(script_dir, "..", "eos", "effects.py") usage = "usage: %prog --database=DB [--debug=DEBUG]" parser = OptionParser(usage=usage) parser.add_option("-d", "--database", help="path to eve cache data dump in \ sqlite format, default to eve database file included in pyfa (../eve.db)", type="string", default=os.path.join(script_dir, "..", "eve.db")) -parser.add_option("-e", "--effects", help="explicit comma-separated list of \ -effects to process", type="string", default="") -parser.add_option("-r", "--remove", help="remove effect files that are not \ -used by any items", action="store_true", dest="remove", default=False) -parser.add_option("-x", "--remove2", help="remove effect files that do not exist \ -in database", action="store_true", dest="remove2", default=False) parser.add_option("-u", "--debug", help="debug level, 0 by default", type="int", default=0) (options, args) = parser.parse_args() @@ -178,20 +172,13 @@ invmarketgroups WHERE marketGroupID = ? LIMIT 1' # Compose list of effects w/o symbols which eos doesn't take into # consideration, we'll use it to find proper effect IDs from file # names -globalmap_effectnameeos_effectid = {} -globalmap_effectnameeos_effectnamedb = {} -STRIPSPEC = "[^A-Za-z0-9]" +globalmap_effectid_effectnamedb = {} cursor.execute(QUERY_ALLEFFECTS) for row in cursor: effectid = row[0] effectnamedb = row[1] - effectnameeos = re.sub(STRIPSPEC, "", effectnamedb).lower() - # There may be different effects with the same name, so form - # sets of IDs - if not effectnameeos in globalmap_effectnameeos_effectid: - globalmap_effectnameeos_effectid[effectnameeos] = set() - globalmap_effectnameeos_effectid[effectnameeos].add(effectid) - globalmap_effectnameeos_effectnamedb[effectnameeos] = effectnamedb + globalmap_effectid_effectnamedb[effectid] = effectnamedb + # Stage 1 # Published types set @@ -402,42 +389,31 @@ for typeid in publishedtypes: (set(), len(typenamesplitted)) globalmap_typeid_typenamecombtuple[typeid][0].add(typenamecomb) -if options.effects: - effect_list = options.effects.split(",") -else: - effect_list = [] - for effect_file in os.listdir(effects_path): - if not effect_file.startswith('__'): - file_name, file_extension = effect_file.rsplit('.', 1) - # Ignore non-py files and exclude implementation-specific 'effects' - if file_extension == "py" and not file_name in "__init__": - effect_list.append(file_name) - # Stage 2 -# Go through effect files one-by-one -for effect_name in effect_list: - effect_file = "{0}.py".format(effect_name) +effectids_eos = set() + +with open(effects_path) as f: + for line in f: + m = re.match("class Effect(\d+)\(", line) + if m: + effectid = int(m.group(1)) + effectids_eos.add(effectid) + +# Go through effect definitions +for effectid in effectids_eos: # Stage 2.1 # Set of items which are affected by current effect pereffectlist_usedbytypes = set() - if effect_name in globalmap_effectnameeos_effectid: - effectids = globalmap_effectnameeos_effectid[effect_name] - else: - if options.remove2: - print(("Warning: effect file " + effect_name + - " exists but is not in database, removing")) - os.remove(os.path.join(effects_path, effect_file)) - else: - print(("Warning: effect file " + effect_name + - " exists but is not in database")) + if effectid not in globalmap_effectid_effectnamedb: + print(f"Warning: effect {effectid} is defined in eos but not in database") continue - for effectid in effectids: - cursor.execute(QUERY_EFFECTID_TYPEID, (effectid,)) - for row in cursor: - typeid = row[0] - if typeid in publishedtypes: - pereffectlist_usedbytypes.add(typeid) + effectnamedb = globalmap_effectid_effectnamedb[effectid] + cursor.execute(QUERY_EFFECTID_TYPEID, (effectid,)) + for row in cursor: + typeid = row[0] + if typeid in publishedtypes: + pereffectlist_usedbytypes.add(typeid) # Number of items affected by current effect pereffect_totalaffected = len(pereffectlist_usedbytypes) @@ -500,7 +476,7 @@ for effect_name in effect_list: stopdebugprints = False if DEBUG_LEVEL >= 1: - print(("\nEffect:", effect_name)) + print(("\nEffect:", effectnamedb)) print(("Total items affected: {0}".format(pereffect_totalaffected))) # Stage 2.2 @@ -876,20 +852,6 @@ inner score: {5:.3})" print(("Type name combinations:", describedbytypenamecomb)) # Stage 2.1 - # Read effect file and split it into lines - effectfile = open(os.path.join(effects_path, effect_file), 'r') - effectcontentssource = effectfile.read() - effectfile.close() - effectLines = effectcontentssource.split("\n") - # Delete old comments from file contents - numofcommentlines = 0 - for line in effectLines: - if line: - if line[0] == "#": numofcommentlines += 1 - else: break - else: break - for i in range(numofcommentlines): - del effectLines[0] # These lists will contain IDs and some metadata in tuples printing_types = [] @@ -990,7 +952,7 @@ inner score: {5:.3})" # Append line for printing to list catname = type[2] typename = type[1] - printstr = "# {0}: {1}".format(catname, typename) + printstr = "{0}: {1}".format(catname, typename) if validate_string(printstr): printing_typelines.append(printstr) # Do the same for groups @@ -1002,7 +964,7 @@ inner score: {5:.3})" groupname = group[1] described = len(effectmap_groupid_typeid[group[0]][0]) total = len(globalmap_groupid_typeid[group[0]]) - printstr = "# {0}s from group: {1} ({2} of {3})".format(catname, groupname, described, total) + printstr = "{0}s from group: {1} ({2} of {3})".format(catname, groupname, described, total) if validate_string(printstr): printing_grouplines.append(printstr) # Process categories @@ -1013,7 +975,7 @@ inner score: {5:.3})" catname = category[1] described = len(effectmap_categoryid_typeid[category[0]][0]) total = len(globalmap_categoryid_typeid[category[0]]) - printstr = "# Items from category: {0} ({1} of {2})".format(catname, described, total) + printstr = "Items from category: {0} ({1} of {2})".format(catname, described, total) if validate_string(printstr): printing_categorylines.append(printstr) # Process variations @@ -1027,7 +989,7 @@ inner score: {5:.3})" basename = basetype[1] described = len(effectmap_basetypeid_typeid[basetype[0]][0]) total = len(globalmap_basetypeid_typeid[basetype[0]]) - printstr = "# Variations of {0}: {1} ({2} of {3})".format(catname, basename, described, total) + printstr = "Variations of {0}: {1} ({2} of {3})".format(catname, basename, described, total) if validate_string(printstr): printing_basetypelines.append(printstr) # Process market groups with variations @@ -1040,7 +1002,7 @@ inner score: {5:.3})" [marketgroup[0]][0]) total = len(globalmap_marketgroupid_typeidwithvariations [marketgroup[0]]) - printstr = "# Items from market group: {0} ({1} of {2})".format(marketgroupname, described, total) + printstr = "Items from market group: {0} ({1} of {2})".format(marketgroupname, described, total) if validate_string(printstr): printing_marketgroupwithvarslines.append(printstr) # Process type name combinations @@ -1055,7 +1017,7 @@ inner score: {5:.3})" described = len(effectmap_typenamecombtuple_typeid [typenamecomb[0]][0]) total = len(globalmap_typenamecombtuple_typeid[typenamecomb[0]]) - printstr = "# {0}s named like: {1} ({2} of {3})".format(catname, namedlike, described, total) + printstr = "{0}s named like: {1} ({2} of {3})".format(catname, namedlike, described, total) if validate_string(printstr): printing_typenamecombtuplelines.append(printstr) @@ -1065,30 +1027,45 @@ inner score: {5:.3})" printing_basetypelines + printing_typelines # Prepend list with "used by" if commentlines: - commentlines = ["# %s\n#\n# Used by:" % \ - globalmap_effectnameeos_effectnamedb[effect_name]]+commentlines + commentlines = [f"{effectnamedb}\n\nUsed by:"] + commentlines # If effect isn't used, write it to file and to terminal else: - commentlines = ["# Not used by any item"] - if options.remove: - print(("Warning: effect file " + effect_name + - " is not used by any item, removing")) - os.remove(os.path.join(effects_path, effect_file)) - continue - else: - print(("Warning: effect file " + effect_name + - " is not used by any item")) - # Combine "used by" comment lines and actual effect lines - outputlines = commentlines + effectLines - # Combine all lines into single string - effectcontentsprocessed = "\n".join(outputlines) - # If we're not debugging and contents actually changed - write - # changes to the file - if DEBUG_LEVEL == 0 and (effectcontentsprocessed != - effectcontentssource): - effectfile = open(os.path.join(effects_path, effect_file), 'w') - effectfile.write(effectcontentsprocessed) - effectfile.close() + commentlines = ["Not used by any item"] + print(f"Warning: effect {effectid} {effectnamedb} is not used by any item") + # Prepare docstring + docstring_new = "\n".join(commentlines) + docstring_new = ['"""'] + docstring_new.splitlines() + ['"""'] + docstring_new = [f' {l}' if l else '' for l in docstring_new] + # If we're not debugging - write changes to the file + if DEBUG_LEVEL == 0: + with open(effects_path) as f: + data = f.read() + lines = data.splitlines() + effect_idx = None + docstart_idx = None + docend_idx = None + for lineidx, line in enumerate(lines): + if line.startswith(f'class Effect{effectid}('): + effect_idx = lineidx + docstart_idx = effect_idx + 1 + # Remove docstring if it's there + if lines[docstart_idx].strip() == '"""': + for docidx, docline in enumerate(lines[docstart_idx + 1:], start=docstart_idx + 1): + if docline.strip() == '"""': + docend_idx = docidx + break + break + if docstart_idx is not None and docend_idx is not None: + docstring_old = lines[docstart_idx:docend_idx + 1] + if docstring_new == docstring_old: + continue + else: + lines = lines[:docstart_idx] + lines[docend_idx + 1:] + lines = lines[:effect_idx + 1] + docstring_new + lines[effect_idx + 1:] + if lines[-1].strip(): + lines.append('') + with open(effects_path, 'w') as f: + f.write('\n'.join(lines)) elif DEBUG_LEVEL >= 2: print("Comment to write to file:") print(("\n".join(commentlines))) diff --git a/service/const.py b/service/const.py index 1f83b38a9..d09d809f6 100644 --- a/service/const.py +++ b/service/const.py @@ -101,3 +101,4 @@ class GuiAttrGroup(IntEnum): JUMP_SYSTEMS = auto() PROPULSIONS = auto() FIGHTERS = auto() + SHIP_GROUP = auto() \ No newline at end of file diff --git a/service/esi.py b/service/esi.py index 88b704664..301af7d53 100644 --- a/service/esi.py +++ b/service/esi.py @@ -155,7 +155,6 @@ class Esi(EsiAccess): res.json() ) cdata = res.json() - print(cdata) currentCharacter = self.getSsoCharacter(cdata['CharacterName']) diff --git a/service/fit.py b/service/fit.py index c02dd7159..d116cd4f1 100644 --- a/service/fit.py +++ b/service/fit.py @@ -50,7 +50,7 @@ class DeferRecalc: def __enter__(self): self._recalc = self.sFit.recalc - self.sFit.recalc = lambda x: print('Deferred Recalc') + self.sFit.recalc = lambda x: pyfalog.debug('Deferred Recalc') def __exit__(self, *args): self.sFit.recalc = self._recalc diff --git a/service/jargon/defaults.yaml b/service/jargon/defaults.yaml index 761fc8473..19003e753 100644 --- a/service/jargon/defaults.yaml +++ b/service/jargon/defaults.yaml @@ -192,6 +192,7 @@ thra: Thermal Dissipation Amplifier knra: Kinetic Deflection Amplifier emra: EM Ward Amplifier exra: Explosive Deflection Amplifier +panic: Pulse Activated Nexus Invulnerability Core # Weapon Upgrades bcs: Ballistic Control System @@ -263,6 +264,7 @@ cbst: Capacitor Booster sa: Signal Amplifier sigamp: Signal Amplifier mapc: Micro Auxiliary Power Core +nsa: Networked Sensor Array # Ammo/Charges am: Antimatter diff --git a/service/port/port.py b/service/port/port.py index 1f961f6c1..a82f6c27b 100644 --- a/service/port/port.py +++ b/service/port/port.py @@ -284,8 +284,8 @@ class Port(object): return importXml(text, iportuser) @staticmethod - def exportXml(iportuser=None, callback=None, *fits): - return exportXml(iportuser, callback=callback, *fits) + def exportXml(fits, iportuser=None, callback=None): + return exportXml(fits, iportuser, callback=callback) # Multibuy-related methods @staticmethod diff --git a/service/port/xml.py b/service/port/xml.py index 0e1f1e9ed..5d577f8f7 100644 --- a/service/port/xml.py +++ b/service/port/xml.py @@ -226,7 +226,7 @@ def importXml(text, iportuser): return fit_list -def exportXml(iportuser, callback, *fits): +def exportXml(fits, iportuser, callback): doc = xml.dom.minidom.Document() fittings = doc.createElement("fittings") # fit count diff --git a/version.yml b/version.yml index e35fb355c..ac7723914 100644 --- a/version.yml +++ b/version.yml @@ -1 +1 @@ -version: v2.7.5 +version: v2.8.0