diff --git a/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java b/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java index a91d81aeb4..46a1d38778 100644 --- a/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java +++ b/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java @@ -1,7 +1,9 @@ package org.bukkit.craftbukkit.inventory; import net.minecraft.server.IInventory; + import org.bukkit.inventory.AnvilInventory; +import org.bukkit.inventory.ItemStack; public class CraftInventoryAnvil extends CraftInventory implements AnvilInventory { private final IInventory resultInventory; @@ -19,6 +21,26 @@ public class CraftInventoryAnvil extends CraftInventory implements AnvilInventor return inventory; } + @Override + public ItemStack getItem(int slot) { + if (slot < getIngredientsInventory().getSize()) { + net.minecraft.server.ItemStack item = getIngredientsInventory().getItem(slot); + return item == null ? null : CraftItemStack.asCraftMirror(item); + } else { + net.minecraft.server.ItemStack item = getResultInventory().getItem(slot - getIngredientsInventory().getSize()); + return item == null ? null : CraftItemStack.asCraftMirror(item); + } + } + + @Override + public void setItem(int index, ItemStack item) { + if (index < getIngredientsInventory().getSize()) { + getIngredientsInventory().setItem(index, (item == null ? null : CraftItemStack.asNMSCopy(item))); + } else { + getResultInventory().setItem((index - getIngredientsInventory().getSize()), (item == null ? null : CraftItemStack.asNMSCopy(item))); + } + } + @Override public int getSize() { return getResultInventory().getSize() + getIngredientsInventory().getSize();