Fixed superiority fighter attack and added Evasive Maneuvers ability.
This commit is contained in:
24
eos/effects/fighterabilityevasivemaneuvers.py
Normal file
24
eos/effects/fighterabilityevasivemaneuvers.py
Normal file
@@ -0,0 +1,24 @@
|
||||
# Not used by any item
|
||||
"""
|
||||
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, module, context):
|
||||
module.boostItemAttr("maxVelocity", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversSpeedBonus"))
|
||||
module.boostItemAttr("signatureRadius", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversSignatureRadiusBonus"), stackingPenalties = True)
|
||||
|
||||
# These may not have stacking penalties, but there's nothing else that affects the attributes yet to check.
|
||||
module.multiplyItemAttr("shieldEmDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversEmResonance"), stackingPenalties = True)
|
||||
module.multiplyItemAttr("shieldThermalDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversThermResonance"), stackingPenalties = True)
|
||||
module.multiplyItemAttr("shieldKineticDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversKinResonance"), stackingPenalties = True)
|
||||
module.multiplyItemAttr("shieldExplosiveDamageResonance", module.getModifiedItemAttr("fighterAbilityEvasiveManeuversExpResonance"), stackingPenalties = True)
|
||||
@@ -29,9 +29,10 @@ class FighterAbility(object):
|
||||
# We aren't able to get data on the charges that can be stored with fighters. So we hardcode that data here, keyed
|
||||
# with the fighter squadron role
|
||||
NUM_SHOTS_MAPPING = {
|
||||
2: 8, # Light fighter / Attack
|
||||
1: 0, # Superiority fighter / Attack
|
||||
2: 12, # Light fighter / Attack
|
||||
4: 6, # Heavy fighter / Heavy attack
|
||||
5: 2, # Heavy fighter / Long range attack
|
||||
5: 3, # Heavy fighter / Long range attack
|
||||
}
|
||||
|
||||
def __init__(self, effect):
|
||||
|
||||
Reference in New Issue
Block a user