From 749934b89d0bd9eadd04de5246ef4180db97058f Mon Sep 17 00:00:00 2001 From: blitzmann Date: Tue, 27 May 2014 19:35:51 -0400 Subject: [PATCH] Fix #106 --- eos/saveddata/module.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/eos/saveddata/module.py b/eos/saveddata/module.py index c27f065da..433a43db5 100755 --- a/eos/saveddata/module.py +++ b/eos/saveddata/module.py @@ -564,9 +564,11 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): #1: It makes sense to run the effect # The effect is either offline # or the effect is passive and the module is in the online state (or higher) + # or the effect is active and the module is in the active state (or higher) # or the effect is overheat and the module is in the overheated state (or higher) #2: the runtimes match + if self.projected or forceProjected: context = "projected", "module" projected = True @@ -575,9 +577,11 @@ class Module(HandledItem, HandledCharge, ItemAttrShortcut, ChargeAttrShortcut): projected = False if self.charge is not None: - for effect in self.charge.effects.itervalues(): - if effect.runTime == runTime: - effect.handler(fit, self, ("moduleCharge",)) + # fix for #82 and it's regression #106 + if not projected or (self.projected and not forceProjected): + for effect in self.charge.effects.itervalues(): + if effect.runTime == runTime: + effect.handler(fit, self, ("moduleCharge",)) if self.item: if self.state >= State.OVERHEATED: