@@ -40868,7 +40868,6 @@ class Effect12165(BaseEffect):
4086840868
4086940869 @staticmethod
4087040870 def handler(fit, ship, context, projectionRange, **kwargs):
40871-
4087240871 # Get pilot sec status bonus directly here, instead of going through the intermediary effects
4087340872 try:
4087440873 sec_status = ship.owner.getPilotSecurity(low_limit=-10, high_limit=0)
@@ -40888,6 +40887,25 @@ def handler(fit, ship, context, projectionRange, **kwargs):
4088840887 f'{dmgType}Damage', bonus, **kwargs)
4088940888
4089040889
40890+ class Effect12176(BaseEffect):
40891+ """
40892+ shipBonusAllShieldresistATCC1
40893+
40894+ Used by:
40895+ Ship: Cobra
40896+ """
40897+
40898+ type = 'passive'
40899+
40900+ @staticmethod
40901+ def handler(fit, ship, context, projectionRange, **kwargs):
40902+ for dmgType in ('em', 'thermal', 'kinetic', 'explosive'):
40903+ fit.ship.boostItemAttr(
40904+ 'shield{}DamageResonance'.format(dmgType.capitalize()),
40905+ ship.getModifiedItemAttr('shipBonusCC3'),
40906+ skill='Caldari Cruiser', **kwargs)
40907+
40908+
4089140909class Effect12179(BaseEffect):
4089240910 """
4089340911 ShipBonusAllShieldResistATCF1
@@ -40907,6 +40925,72 @@ def handler(fit, ship, context, projectionRange, **kwargs):
4090740925 skill='Caldari Frigate', **kwargs)
4090840926
4090940927
40928+ class Effect12180(BaseEffect):
40929+ """
40930+ roleBonusATCruiserMJDFittingReduction
40931+
40932+ Used by:
40933+ Ship: Cobra
40934+ """
40935+
40936+ type = 'passive'
40937+
40938+ @staticmethod
40939+ def handler(fit, ship, context, projectionRange, **kwargs):
40940+ fit.modules.filteredItemBoost(
40941+ lambda mod: mod.item.group.name == 'Micro Jump Drive',
40942+ 'cpu', ship.getModifiedItemAttr('flagCruiserFittingBonusPropMods'), **kwargs)
40943+ fit.modules.filteredItemBoost(
40944+ lambda mod: mod.item.group.name == 'Micro Jump Drive',
40945+ 'power', ship.getModifiedItemAttr('flagCruiserFittingBonusPropMods'), **kwargs)
40946+
40947+
40948+ class Effect12181(BaseEffect):
40949+ """
40950+ ATcruiserTackleBonus1
40951+
40952+ Used by:
40953+ Ship: Cobra
40954+ """
40955+
40956+ type = 'passive'
40957+
40958+ @staticmethod
40959+ def handler(fit, ship, context, projectionRange, **kwargs):
40960+ # Get pilot sec status bonus directly here, instead of going through the intermediary effects
40961+ try:
40962+ sec_status = ship.owner.getPilotSecurity(low_limit=-10, high_limit=0)
40963+ except (KeyboardInterrupt, SystemExit):
40964+ raise
40965+ except:
40966+ return
40967+ bonus = ship.getModifiedItemAttr('ATcruiserStasisWebifierBonus') * sec_status
40968+ fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Stasis Web', 'maxRange', bonus, **kwargs)
40969+
40970+
40971+ class Effect12202(BaseEffect):
40972+ """
40973+ ATcruiserTackleBonus2
40974+
40975+ Used by:
40976+ Ship: Cobra
40977+ """
40978+
40979+ type = 'passive'
40980+
40981+ @staticmethod
40982+ def handler(fit, ship, context, projectionRange, **kwargs):
40983+ # Get pilot sec status bonus directly here, instead of going through the intermediary effects
40984+ try:
40985+ sec_status = ship.owner.getPilotSecurity(low_limit=-10, high_limit=0)
40986+ except (KeyboardInterrupt, SystemExit):
40987+ raise
40988+ except:
40989+ return
40990+ bonus = ship.getModifiedItemAttr('ATcruiserScramblerDisruptorBonus') * sec_status
40991+ fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Warp Scrambler', 'maxRange', bonus, **kwargs)
40992+
40993+
4091040994class Effect12203(BaseEffect):
4091140995 """
4091240996 ATfrigDroneBonus
@@ -40923,3 +41007,21 @@ def handler(fit, ship, context, projectionRange, **kwargs):
4092341007 fit.drones.filteredItemBoost(
4092441008 lambda drone: drone.item.requiresSkill('Light Drone Operation'),
4092541009 attr, ship.getModifiedItemAttr('ATfrigDroneBonus'), **kwargs)
41010+
41011+
41012+ class Effect12214(BaseEffect):
41013+ """
41014+ AtcruiserDroneBonus
41015+
41016+ Used by:
41017+ Ship: Cobra
41018+ """
41019+
41020+ type = 'passive'
41021+
41022+ @staticmethod
41023+ def handler(fit, ship, context, projectionRange, **kwargs):
41024+ for attr in ('shieldCapacity', 'armorHP', 'hp', 'damageMultiplier'):
41025+ fit.drones.filteredItemBoost(
41026+ lambda drone: drone.item.requiresSkill('Medium Drone Operation'),
41027+ attr, ship.getModifiedItemAttr('ATcruiserDroneBonus'), **kwargs)
0 commit comments