diff --git a/src/main/java/appeng/tile/inventory/AppEngInternalAEInventory.java b/src/main/java/appeng/tile/inventory/AppEngInternalAEInventory.java index c63a6d416..d5ff1b343 100644 --- a/src/main/java/appeng/tile/inventory/AppEngInternalAEInventory.java +++ b/src/main/java/appeng/tile/inventory/AppEngInternalAEInventory.java @@ -121,6 +121,10 @@ public class AppEngInternalAEInventory implements FixedItemInv, Iterable getMaxAmount(slot, to)) { + return false; + } + if (simulation == Simulation.SIMULATE) { return true; } diff --git a/src/main/java/appeng/tile/inventory/AppEngInternalInventory.java b/src/main/java/appeng/tile/inventory/AppEngInternalInventory.java index 42f6c50c6..40d6b4276 100644 --- a/src/main/java/appeng/tile/inventory/AppEngInternalInventory.java +++ b/src/main/java/appeng/tile/inventory/AppEngInternalInventory.java @@ -18,24 +18,21 @@ package appeng.tile.inventory; -import java.util.Arrays; -import java.util.Iterator; - -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundTag; - import alexiil.mc.lib.attributes.Simulation; import alexiil.mc.lib.attributes.item.FixedItemInv; import alexiil.mc.lib.attributes.item.LimitedFixedItemInv; -import alexiil.mc.lib.attributes.item.compat.FixedInventoryVanillaWrapper; import alexiil.mc.lib.attributes.item.filter.ConstantItemFilter; import alexiil.mc.lib.attributes.item.filter.ItemFilter; import alexiil.mc.lib.attributes.item.impl.DirectFixedItemInv; - import appeng.util.Platform; import appeng.util.inv.IAEAppEngInventory; import appeng.util.inv.InvOperation; import appeng.util.inv.filter.IAEItemFilter; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.CompoundTag; + +import java.util.Arrays; +import java.util.Iterator; // FIXME: the filtering is not correctly implemented and need to be reworked public class AppEngInternalInventory extends DirectFixedItemInv implements Iterable { @@ -94,6 +91,10 @@ public class AppEngInternalInventory extends DirectFixedItemInv implements Itera @Override public boolean setInvStack(int slot, ItemStack to, Simulation simulation) { + if (!to.isEmpty() && to.getCount() > getMaxAmount(slot, to)) { + return false; + } + if (!simulation.isAction()) { return super.setInvStack(slot, to, simulation); }