diff --git a/src/main/java/codechicken/nei/DefaultBookmarkContainerHandler.java b/src/main/java/codechicken/nei/DefaultBookmarkContainerHandler.java index 9c9cd21a6..e7ef8a373 100644 --- a/src/main/java/codechicken/nei/DefaultBookmarkContainerHandler.java +++ b/src/main/java/codechicken/nei/DefaultBookmarkContainerHandler.java @@ -4,6 +4,7 @@ import java.util.List; import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; import codechicken.nei.api.IBookmarkContainerHandler; @@ -12,15 +13,14 @@ public class DefaultBookmarkContainerHandler implements IBookmarkContainerHandle @Override public void pullBookmarkItemsFromContainer(GuiContainer guiContainer, ArrayList bookmarkItems) { + final List slots = guiContainer.inventorySlots.inventorySlots; final FastTransferManager manager = new FastTransferManager(); - final List containerStacks = getStorageStacks(guiContainer); for (ItemStack bookmarkItem : bookmarkItems) { - for (int i = 0; i < containerStacks.size() && bookmarkItem.stackSize > 0; i++) { - final ItemStack containerItem = containerStacks.get(i); - - if (bookmarkItem.isItemEqual(containerItem)) { - final int transferAmount = Math.min(bookmarkItem.stackSize, containerItem.stackSize); + for (int i = 0; i < slots.size() - 4 * 9; i++) { + final Slot slot = slots.get(i); + if (slot.getHasStack() && bookmarkItem.isItemEqual(slot.getStack())) { + final int transferAmount = Math.min(bookmarkItem.stackSize, slot.getStack().stackSize); manager.transferItems(guiContainer, i, transferAmount); bookmarkItem.stackSize -= transferAmount; }