Improved Blocking Behavior for interfaces with inventories on multiple sides.

AE now ignores inventories that have no sizes this will improve a few strange behaviors.
This commit is contained in:
AlgorithmX2
2014-07-23 11:47:59 -05:00
parent 175e21782a
commit 253221e494
2 changed files with 19 additions and 4 deletions
+7 -2
View File
@@ -65,11 +65,16 @@ public abstract class InventoryAdaptor implements Iterable<ItemSlot>
}
else if ( te instanceof ISidedInventory )
{
return new AdaptorIInventory( new WrapperMCISidedInventory( (ISidedInventory) te, d ) );
ISidedInventory si =(ISidedInventory)te;
int[] slots = si.getAccessibleSlotsFromSide( d.ordinal() );
if ( si.getSizeInventory() > 0 && slots != null && slots.length > 0 )
return new AdaptorIInventory( new WrapperMCISidedInventory( si, d ) );
}
else if ( te instanceof IInventory )
{
return new AdaptorIInventory( (IInventory) te );
IInventory i =(IInventory)te;
if ( i.getSizeInventory() > 0 )
return new AdaptorIInventory( i );
}
return null;