(fit, ship, context, projectionRange, **kwargs)
| 40843 | |
| 40844 | @staticmethod |
| 40845 | def handler(fit, ship, context, projectionRange, **kwargs): |
| 40846 | # Get pilot sec status bonus directly here, instead of going through the intermediary effects |
| 40847 | try: |
| 40848 | sec_status = ship.owner.getPilotSecurity(low_limit=-10, high_limit=0) |
| 40849 | except (KeyboardInterrupt, SystemExit): |
| 40850 | raise |
| 40851 | except: |
| 40852 | return |
| 40853 | bonus = ship.getModifiedItemAttr('ATFrigDmgBonus') * sec_status |
| 40854 | fit.modules.filteredItemBoost( |
| 40855 | lambda mod: (mod.item.requiresSkill('Small Energy Turret') |
| 40856 | or mod.item.requiresSkill('Small Hybrid Turret') |
| 40857 | or mod.item.requiresSkill('Small Projectile Turret')), |
| 40858 | 'damageMultiplier', bonus, **kwargs) |
| 40859 | for dmgType in ('em', 'kinetic', 'explosive', 'thermal'): |
| 40860 | fit.modules.filteredChargeBoost( |
| 40861 | lambda mod: mod.charge.requiresSkill('Rockets') or mod.charge.requiresSkill('Light Missiles'), |
| 40862 | f'{dmgType}Damage', bonus, **kwargs) |
| 40863 | |
| 40864 | |
| 40865 | class Effect12176(BaseEffect): |
nothing calls this directly
no test coverage detected