Storage grid can now properly see crafting grid.

This commit is contained in:
AlgorithmX2 2014-05-22 21:42:27 -05:00
parent 168309ee50
commit ef4cab8f61
2 changed files with 17 additions and 3 deletions

View file

@ -47,10 +47,11 @@ public class CraftingCache implements IGridCache, ICraftingProviderHelper, ICell
grid = g; grid = g;
} }
@MENetworkEventSubscribe
public void afterCacheConstruction(MENetworkPostCacheConstruction cc) public void afterCacheConstruction(MENetworkPostCacheConstruction cc)
{ {
IStorageGrid sg = grid.getCache( IStorageGrid.class ); IStorageGrid sg = grid.getCache( IStorageGrid.class );
sg.addCellProvider( this ); sg.registerCellProvider( this );
} }
@Override @Override
@ -173,7 +174,8 @@ public class CraftingCache implements IGridCache, ICraftingProviderHelper, ICell
public List<IMEInventoryHandler> getCellArray(StorageChannel channel) public List<IMEInventoryHandler> getCellArray(StorageChannel channel)
{ {
ArrayList<IMEInventoryHandler> list = new ArrayList<IMEInventoryHandler>( 1 ); ArrayList<IMEInventoryHandler> list = new ArrayList<IMEInventoryHandler>( 1 );
list.add( this ); if ( channel == StorageChannel.ITEMS )
list.add( this );
return list; return list;
} }

View file

@ -62,6 +62,19 @@ public class GridStorageCache implements IStorageGrid
} }
@Override @Override
public void registerCellProvider(ICellProvider provider)
{
inactiveCellProviders.add( provider );
addCellProvider( provider );
}
@Override
public void unregisterCellProvider(ICellProvider provider)
{
removeCellProvider( provider );
inactiveCellProviders.remove( provider );
}
public void addCellProvider(ICellProvider cc) public void addCellProvider(ICellProvider cc)
{ {
if ( inactiveCellProviders.contains( cc ) ) if ( inactiveCellProviders.contains( cc ) )
@ -85,7 +98,6 @@ public class GridStorageCache implements IStorageGrid
} }
} }
@Override
public void removeCellProvider(ICellProvider cc) public void removeCellProvider(ICellProvider cc)
{ {
if ( activeCellProviders.contains( cc ) ) if ( activeCellProviders.contains( cc ) )