From 65c568bd95778582fec2eaf7c6e9041a842c2b12 Mon Sep 17 00:00:00 2001 From: blitzmann Date: Wed, 25 Jul 2018 22:02:44 -0400 Subject: [PATCH] Move some module state mapping definitions to the module file and add deprecation flags some sFit functions (will be moving to module / commands) --- eos/saveddata/module.py | 24 ++++++++++++++++++++++++ service/fit.py | 23 +++++------------------ 2 files changed, 29 insertions(+), 18 deletions(-) diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index d95afc5c6..d5a68bae3 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -64,6 +64,30 @@ class Slot(Enum): FS_HEAVY = 15 +ProjectedMap = { + State.OVERHEATED: State.ACTIVE, + State.ACTIVE: State.OFFLINE, + State.OFFLINE: State.ACTIVE, + State.ONLINE: State.ACTIVE # Just in case +} + + +# Old state : New State +LocalMap = { + State.OVERHEATED: State.ACTIVE, + State.ACTIVE: State.ONLINE, + State.OFFLINE: State.ONLINE, + State.ONLINE: State.ACTIVE +} + + +# For system effects. They should only ever be online or offline +ProjectedSystem = { + State.OFFLINE: State.ONLINE, + State.ONLINE: State.OFFLINE +} + + class Hardpoint(Enum): NONE = 0 MISSILE = 1 diff --git a/service/fit.py b/service/fit.py index c4c0c15e6..0f775b458 100644 --- a/service/fit.py +++ b/service/fit.py @@ -32,7 +32,7 @@ from eos.saveddata.drone import Drone as es_Drone from eos.saveddata.fighter import Fighter as es_Fighter from eos.saveddata.implant import Implant as es_Implant from eos.saveddata.ship import Ship as es_Ship -from eos.saveddata.module import Module as es_Module, State, Slot +from eos.saveddata.module import Module as es_Module, State, Slot, ProjectedMap, ProjectedSystem, LocalMap from eos.saveddata.fit import Fit as FitType, ImplantLocation from service.character import Character from service.damagePattern import DamagePattern @@ -1186,6 +1186,7 @@ class Fit(object): if changed: self.recalc(fit) + @deprecated def toggleModulesState(self, fitID, base, modules, click): pyfalog.debug("Toggle module state for fit ID: {0}", fitID) changed = False @@ -1210,31 +1211,17 @@ class Fit(object): # Then, check states of all modules and change where needed. This will recalc if needed self.checkStates(fit, base) - # Old state : New State - localMap = { - State.OVERHEATED: State.ACTIVE, - State.ACTIVE: State.ONLINE, - State.OFFLINE: State.ONLINE, - State.ONLINE: State.ACTIVE} - projectedMap = { - State.OVERHEATED: State.ACTIVE, - State.ACTIVE: State.OFFLINE, - State.OFFLINE: State.ACTIVE, - State.ONLINE: State.ACTIVE} # Just in case - # For system effects. They should only ever be online or offline - projectedSystem = { - State.OFFLINE: State.ONLINE, - State.ONLINE: State.OFFLINE} + @deprecated def __getProposedState(self, mod, click, proposedState=None): pyfalog.debug("Get proposed state for module.") if mod.slot == Slot.SUBSYSTEM or mod.isEmpty: return State.ONLINE if mod.slot == Slot.SYSTEM: - transitionMap = self.projectedSystem + transitionMap = ProjectedSystem else: - transitionMap = self.projectedMap if mod.projected else self.localMap + transitionMap = ProjectedMap if mod.projected else LocalMap currState = mod.state