Refactor how remote resistance works. We now check the resistance ID directly from the effect, and fall back to the remoteResistanceID attribute. See #1139

This commit is contained in:
blitzmann
2017-05-02 22:19:58 -04:00
parent 50965244c0
commit 622efb624d
17 changed files with 79 additions and 58 deletions

View File

@@ -5,14 +5,14 @@
type = "projected", "active"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" in context:
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"maxRange", module.getModifiedItemAttr("maxRangeBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"falloff", module.getModifiedItemAttr("falloffBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,12 +5,12 @@
type = "projected", "active"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,12 +5,12 @@
type = "projected", "active"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,7 +5,7 @@
type = "projected", "active"
def handler(fit, container, context):
def handler(fit, container, context, *args, **kwargs):
if "projected" in context:
fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,7 +5,7 @@
type = "projected", "active"
def handler(fit, container, context):
def handler(fit, container, context, *args, **kwargs):
if "projected" in context:
fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,8 +5,8 @@
type = "active", "projected"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -6,8 +6,8 @@
type = "active", "projected"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,7 +5,7 @@
type = "active", "projected"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" in context:
for srcAttr, tgtAttr in (
("aoeCloudSizeBonus", "aoeCloudSize"),
@@ -15,4 +15,4 @@ def handler(fit, module, context):
):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"),
tgtAttr, module.getModifiedItemAttr(srcAttr),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -5,14 +5,14 @@
type = "projected", "active"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" in context:
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"maxRange", module.getModifiedItemAttr("maxRangeBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"falloff", module.getModifiedItemAttr("falloffBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -3,12 +3,12 @@
type = "projected", "active"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxTargetRange", module.getModifiedItemAttr("maxTargetRangeBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.ship.boostItemAttr("scanResolution", module.getModifiedItemAttr("scanResolutionBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -2,8 +2,8 @@
type = "active", "projected"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" not in context:
return
fit.ship.boostItemAttr("maxVelocity", module.getModifiedItemAttr("speedFactor"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -2,7 +2,7 @@
type = "projected", "active"
def handler(fit, container, context):
def handler(fit, container, context, *args, **kwargs):
if "projected" in context:
fit.ship.boostItemAttr("signatureRadius", container.getModifiedItemAttr("signatureRadiusBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)

View File

@@ -3,7 +3,7 @@
type = "active", "projected"
def handler(fit, module, context):
def handler(fit, module, context, *args, **kwargs):
if "projected" in context:
for srcAttr, tgtAttr in (
("aoeCloudSizeBonus", "aoeCloudSize"),
@@ -13,14 +13,14 @@ def handler(fit, module, context):
):
fit.modules.filteredChargeBoost(lambda mod: mod.charge.requiresSkill("Missile Launcher Operation"),
tgtAttr, module.getModifiedItemAttr(srcAttr),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"trackingSpeed", module.getModifiedItemAttr("trackingSpeedBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"maxRange", module.getModifiedItemAttr("maxRangeBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)
fit.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Gunnery"),
"falloff", module.getModifiedItemAttr("falloffBonus"),
stackingPenalties=True, remoteResists=True)
stackingPenalties=True, *args, **kwargs)