Merge branch 'master' into singularity
# Conflicts: # staticdata/fsd_lite/evetypes.json # staticdata/phobos/metadata.json
This commit is contained in:
@@ -8691,8 +8691,8 @@ class Effect2872(BaseEffect):
|
||||
|
||||
@staticmethod
|
||||
def handler(fit, container, context, projectionRange, **kwargs):
|
||||
fit.modules.filteredChargeMultiply(lambda mod: mod.charge.requiresSkill('Defender Missiles'),
|
||||
'maxVelocity', container.getModifiedItemAttr('missileVelocityBonus'), **kwargs)
|
||||
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill('Defender Missiles'),
|
||||
'maxVelocity', container.getModifiedItemAttr('missileVelocityBonus'), **kwargs)
|
||||
|
||||
|
||||
class Effect2881(BaseEffect):
|
||||
@@ -27022,15 +27022,12 @@ class Effect6406(BaseEffect):
|
||||
@staticmethod
|
||||
def handler(fit, src, context, projectionRange, **kwargs):
|
||||
groups = ('Structure ECM Battery', 'Structure Disruption Battery')
|
||||
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
|
||||
'falloff', src.getModifiedItemAttr('structureRigEwarFalloffBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
|
||||
'maxRange', src.getModifiedItemAttr('structureRigEwarOptimalBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
|
||||
'falloffEffectiveness', src.getModifiedItemAttr('structureRigEwarFalloffBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
@@ -27051,8 +27048,7 @@ class Effect6407(BaseEffect):
|
||||
def handler(fit, src, context, projectionRange, **kwargs):
|
||||
groups = ('Structure ECM Battery', 'Structure Disruption Battery')
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups,
|
||||
'capacitorNeed', src.getModifiedItemAttr('structureRigEwarCapUseBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
'capacitorNeed', src.getModifiedItemAttr('structureRigEwarCapUseBonus'), **kwargs)
|
||||
|
||||
|
||||
class Effect6408(BaseEffect):
|
||||
@@ -27157,8 +27153,7 @@ class Effect6413(BaseEffect):
|
||||
@staticmethod
|
||||
def handler(fit, src, context, projectionRange, **kwargs):
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Area Denial Module',
|
||||
'capacitorNeed', src.getModifiedItemAttr('structureRigPDCapUseBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
'capacitorNeed', src.getModifiedItemAttr('structureRigPDCapUseBonus'), **kwargs)
|
||||
|
||||
|
||||
class Effect6417(BaseEffect):
|
||||
@@ -35262,6 +35257,39 @@ class Effect7097(BaseEffect):
|
||||
'damageMultiplier', skill.getModifiedItemAttr('damageMultiplierBonus') * skill.level, **kwargs)
|
||||
|
||||
|
||||
class Effect7098(BaseEffect):
|
||||
"""
|
||||
structureConversionRigBasicBonuses
|
||||
|
||||
Used by:
|
||||
Structure Modules from group: Outpost Conversion Rigs (104 of 104)
|
||||
"""
|
||||
|
||||
type = 'passive'
|
||||
|
||||
@staticmethod
|
||||
def handler(fit, src, context, projectionRange, **kwargs):
|
||||
for attr in ('hp', 'armorHP', 'shieldCapacity', 'capacitorCapacity'):
|
||||
fit.ship.boostItemAttr(attr, src.getModifiedItemAttr('conversionRigHPCapBonus'), **kwargs)
|
||||
fit.ship.boostItemAttr('maxTargetRange', src.getModifiedItemAttr('structureRigMaxTargetRangeBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
fit.ship.boostItemAttr('scanResolution', src.getModifiedItemAttr('structureRigScanResBonus'),
|
||||
stackingPenalties=True, **kwargs)
|
||||
fit.ship.increaseItemAttr('maxLockedTargets', src.getModifiedItemAttr('structureRigMaxTargetBonus'), **kwargs)
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Area Denial Module',
|
||||
'capacitorNeed', src.getModifiedItemAttr('structureRigPDCapUseBonus'), **kwargs)
|
||||
fit.modules.filteredItemBoost(lambda mod: mod.item.group.name == 'Structure Area Denial Module',
|
||||
'empFieldRange', src.getModifiedItemAttr('structureRigPDRangeBonus'), **kwargs)
|
||||
for attr in ('structureRigMaxTargetBonus', 'structureRigMaxTargetRangeBonus', 'structureRigScanResBonus'):
|
||||
fit.modules.filteredItemForce(
|
||||
lambda mod: mod.item.group.name == 'Structure Combat Rig L - Max Targets and Sensor Boosting',
|
||||
attr, src.getModifiedItemAttr('constantZero'), **kwargs)
|
||||
for attr in ('structureRigPDCapUseBonus', 'structureRigPDRangeBonus'):
|
||||
fit.modules.filteredItemForce(
|
||||
lambda mod: mod.item.group.name == 'Structure Combat Rig L - Point Defense Battery Application and Projection',
|
||||
attr, src.getModifiedItemAttr('constantZero'), **kwargs)
|
||||
|
||||
|
||||
class Effect7111(BaseEffect):
|
||||
"""
|
||||
systemSmallPrecursorTurretDamage
|
||||
|
||||
@@ -86,7 +86,7 @@ BUILTINS = OrderedDict([
|
||||
# Source: ticket #2067
|
||||
(-52, ('[NPC][Invasion]Invading Precursor Entities', 0.422, 0.367, 0.453, 0.411)),
|
||||
(-53, ('[NPC][Invasion]Retaliating Amarr Entities', 0.360, 0.310, 0.441, 0.602)),
|
||||
(-54, ('[NPC][Invasion]Retaliating Caldari Entities', 0.287, 0.610, 0.487, 0.401)),
|
||||
(-54, ('[NPC][Invasion]Retaliating Caldari Entities', 0.303, 0.610, 0.487, 0.401)),
|
||||
(-55, ('[NPC][Invasion]Retaliating Gallente Entities', 0.383, 0.414, 0.578, 0.513)),
|
||||
(-56, ('[NPC][Invasion]Retaliating Minmatar Entities', 0.620, 0.422, 0.355, 0.399)),
|
||||
(-57, ('[NPC][Abyssal][Dark Matter All Tiers]Drones', 0.439, 0.522, 0.529, 0.435)),
|
||||
|
||||
@@ -102,9 +102,9 @@ class AddEnvironmentEffect(ContextMenuUnconditional):
|
||||
|
||||
def getData(self):
|
||||
data = Group()
|
||||
data.groups['Metaliminal Storm'] = self.getEffectBeacons(
|
||||
'Electrical', 'Exotic', 'Gamma', 'Plasma',
|
||||
extra_garbage=('Metaliminal', 'Storm', 'Matter', 'Ray', 'Firestorm'))
|
||||
# data.groups['Metaliminal Storm'] = self.getEffectBeacons(
|
||||
# 'Electrical', 'Exotic', 'Gamma', 'Plasma',
|
||||
# extra_garbage=('Metaliminal', 'Storm', 'Matter', 'Ray', 'Firestorm'))
|
||||
data.groups['Wormhole'] = self.getEffectBeacons(
|
||||
'Black Hole', 'Cataclysmic Variable', 'Magnetar',
|
||||
'Pulsar', 'Red Giant', 'Wolf Rayet')
|
||||
|
||||
@@ -598,7 +598,7 @@ def _importCreateFit(lines):
|
||||
"""Create fit and set top-level entity (ship or citadel)."""
|
||||
fit = Fit()
|
||||
header = lines.pop(0)
|
||||
m = re.match('\[(?P<shipType>[\w\s]+),\s*(?P<fitName>.+)\]', header)
|
||||
m = re.match('\[(?P<shipType>[^,]+),\s*(?P<fitName>.+)\]', header)
|
||||
if not m:
|
||||
pyfalog.warning('service.port.eft.importEft: corrupted fit header')
|
||||
raise EftImportError
|
||||
|
||||
@@ -1 +1 @@
|
||||
version: v2.24.1
|
||||
version: v2.25.0
|
||||
|
||||
Reference in New Issue
Block a user