(fit, module, context, projectionRange, **kwargs)
| 27434 | |
| 27435 | @staticmethod |
| 27436 | def handler(fit, module, context, projectionRange, **kwargs): |
| 27437 | if 'projected' not in context: |
| 27438 | return |
| 27439 | if fit.ship.getModifiedItemAttr('disallowOffensiveModifiers'): |
| 27440 | return |
| 27441 | for srcAttr, tgtAttr in ( |
| 27442 | ('aoeCloudSizeBonus', 'aoeCloudSize'), |
| 27443 | ('aoeVelocityBonus', 'aoeVelocity'), |
| 27444 | ('missileVelocityBonus', 'maxVelocity'), |
| 27445 | ('explosionDelayBonus', 'explosionDelay') |
| 27446 | ): |
| 27447 | fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Missile Launcher Operation'), |
| 27448 | tgtAttr, module.getModifiedItemAttr(srcAttr), |
| 27449 | stackingPenalties=True, **kwargs) |
| 27450 | for srcAttr, tgtAttr in ( |
| 27451 | ('trackingSpeedBonus', 'trackingSpeed'), |
| 27452 | ('maxRangeBonus', 'maxRange'), |
| 27453 | ('falloffBonus', 'falloff') |
| 27454 | ): |
| 27455 | fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill('Gunnery'), |
| 27456 | tgtAttr, module.getModifiedItemAttr(srcAttr), |
| 27457 | stackingPenalties=True, **kwargs) |
| 27458 | |
| 27459 | |
| 27460 | class Effect6481(BaseEffect): |
nothing calls this directly
no test coverage detected