diff --git a/nms-patches/net/minecraft/world/inventory/ContainerSmithing.patch b/nms-patches/net/minecraft/world/inventory/ContainerSmithing.patch index cc7292992..728e38b1b 100644 --- a/nms-patches/net/minecraft/world/inventory/ContainerSmithing.patch +++ b/nms-patches/net/minecraft/world/inventory/ContainerSmithing.patch @@ -51,7 +51,7 @@ + return bukkitEntity; + } + -+ org.bukkit.craftbukkit.inventory.CraftInventory inventory = new org.bukkit.craftbukkit.inventory.CraftInventorySmithingNew( ++ org.bukkit.craftbukkit.inventory.CraftInventory inventory = new org.bukkit.craftbukkit.inventory.CraftInventorySmithing( + access.getLocation(), this.inputSlots, this.resultSlots); + bukkitEntity = new CraftInventoryView(this.player.getBukkitEntity(), inventory, this); + return bukkitEntity; diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java index 24d378dd7..1c6ecad65 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java @@ -198,7 +198,6 @@ public class CraftContainer extends Container { delegate = new ContainerHopper(windowId, bottom, top); break; case ANVIL: - case SMITHING: setupAnvil(top, bottom); // SPIGOT-6783 - manually set up slots so we can use the delegated inventory and not the automatically created one break; case BEACON: @@ -231,6 +230,7 @@ public class CraftContainer extends Container { case MERCHANT: delegate = new ContainerMerchant(windowId, bottom); break; + case SMITHING: case SMITHING_NEW: setupSmithing(top, bottom); // SPIGOT-6783 - manually set up slots so we can use the delegated inventory and not the automatically created one break; diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java index b2a56e88f..283494083 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java @@ -505,8 +505,6 @@ public class CraftInventory implements Inventory { return InventoryType.COMPOSTER; } else if (inventory instanceof TileEntityJukeBox) { return InventoryType.JUKEBOX; - } else if (this instanceof CraftInventorySmithingNew) { - return InventoryType.SMITHING_NEW; } else { return InventoryType.CHEST; } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java index ac36437b3..4fd40f76c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithing.java @@ -29,12 +29,12 @@ public class CraftInventorySmithing extends CraftResultInventory implements Smit @Override public ItemStack getResult() { - return getItem(2); + return getItem(3); } @Override public void setResult(ItemStack item) { - setItem(2, item); + setItem(3, item); } @Override diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithingNew.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithingNew.java deleted file mode 100644 index a49aa02dd..000000000 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventorySmithingNew.java +++ /dev/null @@ -1,45 +0,0 @@ -package org.bukkit.craftbukkit.inventory; - -import net.minecraft.world.IInventory; -import net.minecraft.world.inventory.InventoryCraftResult; -import net.minecraft.world.item.crafting.IRecipe; -import org.bukkit.Location; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.Recipe; -import org.bukkit.inventory.SmithingInventory; - -public class CraftInventorySmithingNew extends CraftResultInventory implements SmithingInventory { - - private final Location location; - - public CraftInventorySmithingNew(Location location, IInventory inventory, InventoryCraftResult resultInventory) { - super(inventory, resultInventory); - this.location = location; - } - - @Override - public InventoryCraftResult getResultInventory() { - return (InventoryCraftResult) super.getResultInventory(); - } - - @Override - public Location getLocation() { - return location; - } - - @Override - public ItemStack getResult() { - return getItem(3); - } - - @Override - public void setResult(ItemStack item) { - setItem(3, item); - } - - @Override - public Recipe getRecipe() { - IRecipe recipe = getResultInventory().getRecipeUsed(); - return (recipe == null) ? null : recipe.toBukkitRecipe(); - } -}