diff --git a/eos/effects.py b/eos/effects.py index 46a123dd0..ae5e9059f 100644 --- a/eos/effects.py +++ b/eos/effects.py @@ -63,11 +63,10 @@ class Effect100001(BaseEffect): @staticmethod def handler(fit, beacon, context, projectionRange, **kwargs): - for i in (1, 4): + for i in range(1, 4): if id := beacon.getModifiedItemAttr(f'warfareBuff{i}ID'): value = beacon.getModifiedItemAttr(f'warfareBuff{i}Value') - if id: - fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') + fit.addCommandBonus(id, value, beacon, kwargs['effect'], 'early') class Effect4(BaseEffect): diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index bd63caea6..9e8a20cd1 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -66,8 +66,8 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut, M """An instance of this class represents a module together with its charge and modified attributes""" MINING_ATTRIBUTES = ("miningAmount",) SYSTEM_GROUPS = ( - "Effect Beacon", "MassiveEnvironments", "Abyssal Hazards", - "Non-Interactable Object", "Destructible Effect Beacon") + "Effect Beacon", "MassiveEnvironments", "Abyssal Hazards", "Non-Interactable Object", + "Destructible Effect Beacon", "Sovereignty Hub System Effect Generator Upgrades") def __init__(self, item, baseItem=None, mutaplasmid=None): """Initialize a module from the program""" diff --git a/gui/builtinContextMenus/envEffectAdd.py b/gui/builtinContextMenus/envEffectAdd.py index 23ce64d5d..4623ca188 100644 --- a/gui/builtinContextMenus/envEffectAdd.py +++ b/gui/builtinContextMenus/envEffectAdd.py @@ -128,6 +128,7 @@ class AddEnvironmentEffect(ContextMenuUnconditional): data.groups[_t('Pirate Insurgency')] = self.getEffectBeacons( _t('ContextMenu|ProjectedEffectManipulation|Insurgency'), extra_garbage=(_t('ContextMenu|ProjectedEffectManipulation|Beacon'),)) + data.groups[_t('IHub Upgrades')] = self.getIHubEffects() return data def getEffectBeacons(self, *groups, extra_garbage=()): @@ -219,19 +220,6 @@ class AddEnvironmentEffect(ContextMenuUnconditional): subsubdata.items.append(Entry(beacon.ID, beacon.customName, beacon.customName)) subdata.sort() - # PVP weather - data.items.append(Entry(49766, _t('PvP Weather'), _t('PvP Weather'))) - - return data - - def getDestructibleBeacons(self): - data = Group() - sMkt = Market.getInstance() - for item in sMkt.getItemsByGroup(sMkt.getGroup('Destructible Effect Beacon')): - if not item.isType('projected'): - continue - data.items.append(Entry(item.ID, item.name, item.name)) - data.sort() return data def getDrifterIncursion(self): @@ -242,7 +230,7 @@ class AddEnvironmentEffect(ContextMenuUnconditional): return data def getInvasionBeacons(self): - data = self.getDestructibleBeacons() + data = Group() # Trig Minor Victory item = Market.getInstance().getItem(87177) data.items.append(Entry(item.ID, item.name, item.name)) @@ -254,11 +242,20 @@ class AddEnvironmentEffect(ContextMenuUnconditional): data.items.append(Entry(item.ID, item.name, item.name)) return data - def getInsurgencyBeacons(self): - data = self.getDestructibleBeacons() - # Suppression Interdiction Range Beacon - item = Market.getInstance().getItem(79839) - data.items.append(Entry(item.ID, item.name, item.name)) + def getIHubEffects(self): + data = Group() + # Electric + item = Market.getInstance().getItem(87950) + data.items.append(Entry(item.ID, item.name, _t('Electric'))) + # Plasma + item = Market.getInstance().getItem(87949) + data.items.append(Entry(item.ID, item.name, _t('Plasma'))) + # Exotic + item = Market.getInstance().getItem(87951) + data.items.append(Entry(item.ID, item.name, _t('Exotic'))) + # Gamma + item = Market.getInstance().getItem(87815) + data.items.append(Entry(item.ID, item.name, _t('Gamma'))) return data AddEnvironmentEffect.register()