From 4d268b97a9a90e819a82a369bb73cf79ff79bcca Mon Sep 17 00:00:00 2001 From: PrototypeTrousers Date: Mon, 11 Apr 2022 03:50:33 -0300 Subject: [PATCH] cache itemstack on export bus --- .../java/appeng/parts/automation/PartExportBus.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/appeng/parts/automation/PartExportBus.java b/src/main/java/appeng/parts/automation/PartExportBus.java index d987b9109..538947933 100644 --- a/src/main/java/appeng/parts/automation/PartExportBus.java +++ b/src/main/java/appeng/parts/automation/PartExportBus.java @@ -319,16 +319,16 @@ public class PartExportBus extends PartSharedItemBus implements ICraftingRequest return this.getInstalledUpgrades( Upgrades.CRAFTING ) > 0; } - private void pushItemIntoTarget( final InventoryAdaptor d, final IEnergyGrid energy, final IMEInventory inv, IAEItemStack ais ) + private void pushItemIntoTarget( final InventoryAdaptor d, final IEnergyGrid energy, final IMEInventory inv, IAEItemStack org ) { - ItemStack inputStack = ais.getCachedItemStack( ais.getStackSize() ); + ItemStack inputStack = org.getCachedItemStack( org.getStackSize() ); ItemStack remaining = d.simulateAdd( inputStack ); // Store the stack in the cache for next time. if( !remaining.isEmpty() ) { - ais.setCachedItemStack( remaining ); + org.setCachedItemStack( remaining ); if( remaining == inputStack ) { return; @@ -339,7 +339,7 @@ public class PartExportBus extends PartSharedItemBus implements ICraftingRequest if( canFit > 0 ) { - ais = ais.copy(); + IAEItemStack ais = org.copy(); ais.setStackSize( canFit ); final IAEItemStack itemsToAdd = Platform.poweredExtraction( energy, inv, ais, this.mySrc ); @@ -360,6 +360,10 @@ public class PartExportBus extends PartSharedItemBus implements ICraftingRequest this.didSomething = true; } } + else + { + org.setCachedItemStack( inputStack ); + } } }