From 5d4a3ee54a0ba7cd9e2492842367a6208fbee170 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Sat, 12 Jul 2014 23:20:34 -0500 Subject: [PATCH] Co-Processors can now increase bandwidth for a single item being split on more then 2 Assemblers. --- .../implementations/CraftingCPUCluster.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/me/cluster/implementations/CraftingCPUCluster.java b/me/cluster/implementations/CraftingCPUCluster.java index 63c1d4e23..50ef830c2 100644 --- a/me/cluster/implementations/CraftingCPUCluster.java +++ b/me/cluster/implementations/CraftingCPUCluster.java @@ -507,9 +507,24 @@ public class CraftingCPUCluster implements IAECluster, ICraftingCPU if ( waiting || tasks.isEmpty() ) // nothing to do here... return; - int remainingOperations = accelerator + 1; - boolean didsomething = false; + remainingOperations = accelerator + 1; + do + { + didsomething = false; + executeCrafting( eg, cc ); + } + while (didsomething && remainingOperations > 0); + + if ( remainingOperations > 0 && didsomething == false ) + waiting = true; + } + + private int remainingOperations; + private boolean didsomething; + + private void executeCrafting(IEnergyGrid eg, CraftingGridCache cc) + { Iterator> i = tasks.entrySet().iterator(); while (i.hasNext()) { @@ -663,9 +678,6 @@ public class CraftingCPUCluster implements IAECluster, ICraftingCPU } } } - - if ( remainingOperations > 0 && didsomething == false ) - waiting = true; } private void storeItems()