38 lines
1.7 KiB
Diff
38 lines
1.7 KiB
Diff
|
--- a/net/minecraft/server/RecipeRepair.java
|
||
|
+++ b/net/minecraft/server/RecipeRepair.java
|
||
|
@@ -3,9 +3,13 @@
|
||
|
import com.google.common.collect.Lists;
|
||
|
import java.util.ArrayList;
|
||
|
|
||
|
-public class RecipeRepair implements IRecipe {
|
||
|
+public class RecipeRepair extends ShapelessRecipes implements IRecipe { // CraftBukkit - added extends
|
||
|
|
||
|
- public RecipeRepair() {}
|
||
|
+ // CraftBukkit start - Delegate to new parent class
|
||
|
+ public RecipeRepair() {
|
||
|
+ super(new ItemStack(Items.LEATHER_HELMET), java.util.Arrays.asList(new ItemStack(Items.LEATHER_HELMET)));
|
||
|
+ }
|
||
|
+ // CraftBukkit end
|
||
|
|
||
|
public boolean a(InventoryCrafting inventorycrafting, World world) {
|
||
|
ArrayList arraylist = Lists.newArrayList();
|
||
|
@@ -62,7 +66,17 @@
|
||
|
i1 = 0;
|
||
|
}
|
||
|
|
||
|
- return new ItemStack(itemstack2.getItem(), 1, i1);
|
||
|
+ // CraftBukkit start - Construct a dummy repair recipe
|
||
|
+ ItemStack result = new ItemStack(itemstack.getItem(), 1, i1);
|
||
|
+ java.util.List<ItemStack> ingredients = new ArrayList<ItemStack>();
|
||
|
+ ingredients.add(itemstack2.cloneItemStack());
|
||
|
+ ingredients.add(itemstack.cloneItemStack());
|
||
|
+ ShapelessRecipes recipe = new ShapelessRecipes(result.cloneItemStack(), ingredients);
|
||
|
+ inventorycrafting.currentRecipe = recipe;
|
||
|
+ result = org.bukkit.craftbukkit.event.CraftEventFactory.callPreCraftEvent(inventorycrafting, result, CraftingManager.getInstance().lastCraftView, true);
|
||
|
+ return result;
|
||
|
+ // return new ItemStack(itemstack2.getItem(), 1, i1);
|
||
|
+ // CraftBukkit end
|
||
|
}
|
||
|
}
|
||
|
|