diff --git a/CraftBukkit-Patches/0044-Recipe-Deconstruction.patch b/CraftBukkit-Patches/0044-Recipe-Deconstruction.patch new file mode 100644 index 0000000000..1987f6a614 --- /dev/null +++ b/CraftBukkit-Patches/0044-Recipe-Deconstruction.patch @@ -0,0 +1,71 @@ +From ad17ba80c942959985d3de1a5a31680c8e0c1856 Mon Sep 17 00:00:00 2001 +From: md_5 +Date: Sat, 1 Jun 2013 16:34:38 +1000 +Subject: [PATCH] Recipe Deconstruction + +Some non API methods contributed by Asphodan to allow recipe deconstruction. + +diff --git a/src/main/java/net/minecraft/server/IRecipe.java b/src/main/java/net/minecraft/server/IRecipe.java +index bb28c12..c0836e4 100644 +--- a/src/main/java/net/minecraft/server/IRecipe.java ++++ b/src/main/java/net/minecraft/server/IRecipe.java +@@ -11,4 +11,6 @@ public interface IRecipe { + ItemStack b(); + + org.bukkit.inventory.Recipe toBukkitRecipe(); // CraftBukkit ++ ++ java.util.List getIngredients(); // Spigot + } +diff --git a/src/main/java/net/minecraft/server/ShapedRecipes.java b/src/main/java/net/minecraft/server/ShapedRecipes.java +index a70b828..6d0c8ca 100644 +--- a/src/main/java/net/minecraft/server/ShapedRecipes.java ++++ b/src/main/java/net/minecraft/server/ShapedRecipes.java +@@ -10,7 +10,7 @@ public class ShapedRecipes implements IRecipe { + private int width; + private int height; + private ItemStack[] items; +- private ItemStack result; ++ public ItemStack result; // Spigot + public final int a; + private boolean f = false; + +@@ -158,4 +158,11 @@ public class ShapedRecipes implements IRecipe { + this.f = true; + return this; + } ++ ++ // Spigot start ++ public java.util.List getIngredients() ++ { ++ return java.util.Arrays.asList( items ); ++ } ++ // Spigot end + } +diff --git a/src/main/java/net/minecraft/server/ShapelessRecipes.java b/src/main/java/net/minecraft/server/ShapelessRecipes.java +index fbdad80..dc0ce9e 100644 +--- a/src/main/java/net/minecraft/server/ShapelessRecipes.java ++++ b/src/main/java/net/minecraft/server/ShapelessRecipes.java +@@ -11,7 +11,7 @@ import org.bukkit.craftbukkit.inventory.CraftShapelessRecipe; + + public class ShapelessRecipes implements IRecipe { + +- private final ItemStack result; ++ public final ItemStack result; // Spigot + private final List ingredients; + + public ShapelessRecipes(ItemStack itemstack, List list) { +@@ -75,4 +75,11 @@ public class ShapelessRecipes implements IRecipe { + public int a() { + return this.ingredients.size(); + } ++ ++ // Spigot start ++ public java.util.List getIngredients() ++ { ++ return java.util.Collections.unmodifiableList( ingredients ); ++ } ++ // Spigot end + } +-- +1.8.1.2 +