Do all localization effects

This commit is contained in:
blitzmann
2018-05-20 15:05:41 -04:00
parent d110dd4c76
commit 7ac4b52d20
6 changed files with 74 additions and 2 deletions

View File

@@ -0,0 +1,13 @@
runTime = "early"
type = ("projected", "passive", "gang")
def handler(fit, beacon, context, **kwargs):
for x in range(1, 3):
if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)):
value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x))
id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x))
if id:
fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early')

View File

@@ -0,0 +1,13 @@
runTime = "early"
type = ("projected", "passive", "gang")
def handler(fit, beacon, context, **kwargs):
for x in range(1, 3):
if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)):
value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x))
id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x))
if id:
fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early')

View File

@@ -0,0 +1,13 @@
runTime = "early"
type = ("projected", "passive", "gang")
def handler(fit, beacon, context, **kwargs):
for x in range(1, 3):
if beacon.getModifiedItemAttr("warfareBuff{}ID".format(x)):
value = beacon.getModifiedItemAttr("warfareBuff{}Value".format(x))
id = beacon.getModifiedItemAttr("warfareBuff{}ID".format(x))
if id:
fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early')

View File

@@ -672,6 +672,29 @@ class Fit(object):
groups = ("Energy Weapon", "Hybrid Weapon")
self.modules.filteredItemBoost(lambda mod: mod.item.group.name in groups, "maxRange", value, stackingPenalties=True)
# Localized environment effects
if warfareBuffID == 79: # AOE_Beacon_bioluminescence_cloud
self.ship.boostItemAttr("signatureRadius", value, stackingPenalties=True)
if warfareBuffID == 80: # AOE_Beacon_caustic_cloud_local_repair
self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Repair Systems"),
"armorDamageAmount", value, stackingPenalties=True)
if warfareBuffID == 81: # AOE_Beacon_caustic_cloud_remote_repair
self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Remote Armor Repair Systems"),
"armorDamageAmount", value, stackingPenalties=True)
if warfareBuffID == 88: # AOE_Beacon_filament_cloud_shield_booster
self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or
mod.item.requiresSkill("Shield Emission Systems"),
"capacitorNeed", value, stackingPenalties=True)
if warfareBuffID == 89: # AOE_Beacon_filament_cloud_ancillary_charge_usage
self.modules.filteredItemBoost(lambda mod: mod.item.requiresSkill("Shield Operation") or
mod.item.requiresSkill("Shield Emission Systems"),
"chargeRate", value, stackingPenalties=True)
# Abysmal Weather Effects
if warfareBuffID == 90: # Weather_electric_storm_EM_resistance_penalty

BIN
eve.db

Binary file not shown.

View File

@@ -821,6 +821,7 @@ class Market(object):
grp = self.getGroup("Effect Beacon")
grp2 = self.getGroup("MassiveEnvironments")
grp3 = self.getGroup("Non-Interactable Object")
grp4 = self.getGroup("Uninteractable Localized Effect Beacon")
# Cycle through them
for beacon in self.getItemsByGroup(grp):
@@ -851,8 +852,17 @@ class Market(object):
# Break loop on 1st result
break
effects["Non-Interactable"] = set()
effects["Weather"] = set()
for beacon in grp3.items:
effects["Non-Interactable"].add((beacon, beacon.name, beacon.name))
if "weather" in beacon.name:
effects["Weather"].add((beacon, beacon.name, beacon.name))
for beacon in grp2.items:
if "weather" in beacon.name:
effects["Weather"].add((beacon, beacon.name, beacon.name))
effects["Localized"] = set()
for beacon in grp4.items:
effects["Localized"].add((beacon, beacon.name, beacon.name))
return effects