diff --git a/src/js/game/systems/item_processor.js b/src/js/game/systems/item_processor.js index be5cc844..a1799df2 100644 --- a/src/js/game/systems/item_processor.js +++ b/src/js/game/systems/item_processor.js @@ -19,11 +19,16 @@ export class ItemProcessorSystem extends GameSystemWithFilter { const processorComp = entity.components.ItemProcessor; const ejectorComp = entity.components.ItemEjector; - // First of all, process the current recipe - processorComp.secondsUntilEject = - processorComp.secondsUntilEject - this.root.dynamicTickrate.deltaSeconds; + if (processorComp.secondsUntilEject > 0) { + // First of all, process the current recipe + processorComp.secondsUntilEject = + processorComp.secondsUntilEject - this.root.dynamicTickrate.deltaSeconds; - if (G_IS_DEV && globalConfig.debug.instantProcessors) { + if (G_IS_DEV && globalConfig.debug.instantProcessors) { + processorComp.secondsUntilEject = 0; + } + } else { + // Remove time carryover if processing is not continuous processorComp.secondsUntilEject = 0; } @@ -80,11 +85,6 @@ export class ItemProcessorSystem extends GameSystemWithFilter { } } } - - // Remove time carryover if processing is not continuous - if (processorComp.secondsUntilEject < 0) { - processorComp.secondsUntilEject = 0; - } } }