From 7305c0a017198ec04e81698ddda07d6c9afce1e6 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Sun, 12 May 2019 02:55:42 +0300 Subject: [PATCH] Add optional parameter to cycle parameter getters --- eos/saveddata/drone.py | 2 +- eos/saveddata/fighter.py | 5 +++-- eos/saveddata/module.py | 7 +++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/eos/saveddata/drone.py b/eos/saveddata/drone.py index 354f522cf..1ba5fe135 100644 --- a/eos/saveddata/drone.py +++ b/eos/saveddata/drone.py @@ -164,7 +164,7 @@ class Drone(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): explosive=volley.explosive * dpsFactor) return dps - def getCycleParameters(self): + def getCycleParameters(self, reloadOverride=None): return CycleInfo(self.cycleTime, 0, math.inf) def getRemoteReps(self, ignoreState=False): diff --git a/eos/saveddata/fighter.py b/eos/saveddata/fighter.py index 541fcfc4f..71787fdf1 100644 --- a/eos/saveddata/fighter.py +++ b/eos/saveddata/fighter.py @@ -241,9 +241,10 @@ class Fighter(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): def getCycleParametersPerEffectInfinite(self): return {a.effectID: CycleInfo(a.cycleTime, 0, math.inf) for a in self.abilities if a.numShots == 0} - def getCycleParametersPerEffect(self): + def getCycleParametersPerEffect(self, reloadOverride=None): + factorReload = reloadOverride if reloadOverride is not None else self.owner.factorReload # Assume it can cycle infinitely - if not self.owner.factorReload: + if not factorReload: return {a.effectID: CycleInfo(a.cycleTime, 0, math.inf) for a in self.abilities} limitedAbilities = [a for a in self.abilities if a.numShots > 0] if len(limitedAbilities) == 0: diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index cba89a8b8..f65a6a83a 100644 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -829,10 +829,13 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): except: effect.handler(fit, self, context) - def getCycleParameters(self): + def getCycleParameters(self, reloadOverride=None): """Copied from new eos as well""" # Determine if we'll take into account reload time or not - factorReload = self.owner.factorReload if self.forceReload is None else self.forceReload + if reloadOverride is not None: + factorReload = reloadOverride + else: + factorReload = self.owner.factorReload if self.forceReload is None else self.forceReload cycles_until_reload = self.numShots if cycles_until_reload == 0: