This commit is contained in:
AlgorithmX2
2014-06-02 01:44:48 -05:00
2 changed files with 30 additions and 4 deletions
+17 -2
View File
@@ -367,6 +367,13 @@ public class DualityInterface implements IGridTickable, ISegmentedInventory, ISt
if ( itemStack.getStackSize() > 0 )
{
// make sure strange things didn't happen...
if ( adaptor.simulateAdd( itemStack.getItemStack() ) != null )
{
changed = true;
throw new GridAccessException();
}
IAEItemStack aquired = Platform.poweredExtraction( src, destination, itemStack, mySrc );
if ( aquired != null )
{
@@ -383,6 +390,14 @@ public class DualityInterface implements IGridTickable, ISegmentedInventory, ISt
long diff = toStore.getStackSize();
// make sure strange things didn't happen...
ItemStack canExtract = adaptor.simulateRemove( (int) diff, toStore.getItemStack(), null );
if ( canExtract == null || canExtract.stackSize != diff )
{
changed = true;
throw new GridAccessException();
}
toStore = Platform.poweredInsert( src, destination, toStore, mySrc );
if ( toStore != null )
@@ -394,9 +409,9 @@ public class DualityInterface implements IGridTickable, ISegmentedInventory, ISt
changed = true;
ItemStack removed = adaptor.removeItems( (int) diff, null, null );
if ( removed == null )
throw new RuntimeException( "bad attempt at managing inventory. ( addItems )" );
throw new RuntimeException( "bad attempt at managing inventory. ( removeItems )" );
else if ( removed.stackSize != diff )
throw new RuntimeException( "bad attempt at managing inventory. ( addItems )" );
throw new RuntimeException( "bad attempt at managing inventory. ( removeItems )" );
}
}
// else wtf?