Fixed the ME system not finding any Crafting CPU's.
Might have to rework it a bit later. looks kind of ugly like this.
This commit is contained in:
+21
-9
@@ -36,6 +36,7 @@ import java.util.concurrent.Executors;
|
|||||||
import java.util.concurrent.Future;
|
import java.util.concurrent.Future;
|
||||||
import java.util.concurrent.ThreadFactory;
|
import java.util.concurrent.ThreadFactory;
|
||||||
|
|
||||||
|
import appeng.api.networking.IMachineSet;
|
||||||
import com.google.common.collect.HashMultimap;
|
import com.google.common.collect.HashMultimap;
|
||||||
import com.google.common.collect.ImmutableCollection;
|
import com.google.common.collect.ImmutableCollection;
|
||||||
import com.google.common.collect.ImmutableList;
|
import com.google.common.collect.ImmutableList;
|
||||||
@@ -304,20 +305,31 @@ public class CraftingGridCache implements ICraftingGrid, ICraftingProviderHelper
|
|||||||
{
|
{
|
||||||
this.craftingCPUClusters.clear();
|
this.craftingCPUClusters.clear();
|
||||||
|
|
||||||
for( final IGridNode cst : this.grid.getMachines( TileCraftingStorageTile.class ) )
|
IMachineSet machineSets[] = new IMachineSet[4]; // 4 because we have 4 types of Storage Tiles ATM.
|
||||||
{
|
|
||||||
final TileCraftingStorageTile tile = (TileCraftingStorageTile) cst.getMachine();
|
|
||||||
final CraftingCPUCluster cluster = (CraftingCPUCluster) tile.getCluster();
|
|
||||||
if( cluster != null )
|
|
||||||
{
|
|
||||||
this.craftingCPUClusters.add( cluster );
|
|
||||||
|
|
||||||
if( cluster.getLastCraftingLink() != null )
|
machineSets[0] = this.grid.getMachines( TileCraftingStorageTile.TileCraftingStorageTile1k.class );
|
||||||
|
machineSets[1] = this.grid.getMachines( TileCraftingStorageTile.TileCraftingStorageTile4k.class );
|
||||||
|
machineSets[2] = this.grid.getMachines( TileCraftingStorageTile.TileCraftingStorageTile16k.class );
|
||||||
|
machineSets[3] = this.grid.getMachines( TileCraftingStorageTile.TileCraftingStorageTile64k.class );
|
||||||
|
|
||||||
|
for ( IMachineSet ms : machineSets )
|
||||||
|
{
|
||||||
|
for( final IGridNode cst : ms )
|
||||||
|
{
|
||||||
|
final TileCraftingStorageTile tile = (TileCraftingStorageTile) cst.getMachine();
|
||||||
|
final CraftingCPUCluster cluster = (CraftingCPUCluster) tile.getCluster();
|
||||||
|
if( cluster != null )
|
||||||
{
|
{
|
||||||
this.addLink( (CraftingLink) cluster.getLastCraftingLink() );
|
this.craftingCPUClusters.add( cluster );
|
||||||
|
|
||||||
|
if( cluster.getLastCraftingLink() != null )
|
||||||
|
{
|
||||||
|
this.addLink( (CraftingLink) cluster.getLastCraftingLink() );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addLink( final CraftingLink link )
|
public void addLink( final CraftingLink link )
|
||||||
|
|||||||
Reference in New Issue
Block a user