diff --git a/src/main/java/thaumic/tinkerer/common/block/tile/container/kami/ContainerIchorPouch.java b/src/main/java/thaumic/tinkerer/common/block/tile/container/kami/ContainerIchorPouch.java index ce0f6911..8ab3aca2 100644 --- a/src/main/java/thaumic/tinkerer/common/block/tile/container/kami/ContainerIchorPouch.java +++ b/src/main/java/thaumic/tinkerer/common/block/tile/container/kami/ContainerIchorPouch.java @@ -73,22 +73,31 @@ public ItemStack slotClick(int par1, int par2, int par3, EntityPlayer par4Entity if (par1 == blockSlot) { return null; } - return super.slotClick(par1, par2, par3, par4EntityPlayer); + + ItemStack stack = super.slotClick(par1, par2, par3, par4EntityPlayer); + if (!this.player.worldObj.isRemote) { + saveInventory(); + } + return stack; } @Override public void onContainerClosed(EntityPlayer par1EntityPlayer) { super.onContainerClosed(par1EntityPlayer); if (!player.worldObj.isRemote) { - ((ItemFocusPouch) pouch.getItem()).setInventory(pouch, ((InventoryIchorPouch) inv).stackList); - if (player == null) return; - if (player.getHeldItem() != null && player.getHeldItem().isItemEqual(pouch)) - player.setCurrentItemOrArmor(0, pouch); - - player.inventory.markDirty(); + saveInventory(); } } + private void saveInventory() { + ((ItemFocusPouch) pouch.getItem()).setInventory(pouch, ((InventoryIchorPouch) inv).stackList); + if (player == null) return; + if (player.getHeldItem() != null && player.getHeldItem().isItemEqual(pouch)) + player.setCurrentItemOrArmor(0, pouch); + + player.inventory.markDirty(); + } + @Override public boolean canInteractWith(EntityPlayer entityplayer) { return true;