mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-25 18:37:35 +01:00
5a5c3a4a24
The issue the patch was initially added for has already been fixed and filling stacktraces can be expensive
51 lines
2.7 KiB
Diff
51 lines
2.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Bjarne Koll <lynxplay101@gmail.com>
|
|
Date: Fri, 19 Jul 2024 17:27:38 +0200
|
|
Subject: [PATCH] Move CraftComplexRecipe to extend CraftingRecipe
|
|
|
|
A craft complex recipe wraps a CustomRecipe, which itself is a
|
|
CraftingRecipe.
|
|
As such, this complex recipe should also be a crafting recipe.
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/item/crafting/CustomRecipe.java b/src/main/java/net/minecraft/world/item/crafting/CustomRecipe.java
|
|
index b57a2ba09f160409b5df9a2ae7ec159af3e4bf93..69a7e500c725e9da950df30f2cc4ff5f72e527d0 100644
|
|
--- a/src/main/java/net/minecraft/world/item/crafting/CustomRecipe.java
|
|
+++ b/src/main/java/net/minecraft/world/item/crafting/CustomRecipe.java
|
|
@@ -34,7 +34,12 @@ public abstract class CustomRecipe implements CraftingRecipe {
|
|
// CraftBukkit start
|
|
@Override
|
|
public Recipe toBukkitRecipe(NamespacedKey id) {
|
|
- return new org.bukkit.craftbukkit.inventory.CraftComplexRecipe(id, this);
|
|
+ // Paper - make CraftComplexRecipe extend CraftingRecipe - start
|
|
+ final org.bukkit.craftbukkit.inventory.CraftComplexRecipe recipe = new org.bukkit.craftbukkit.inventory.CraftComplexRecipe(id, this);
|
|
+ recipe.setGroup(this.getGroup());
|
|
+ recipe.setCategory(org.bukkit.craftbukkit.inventory.CraftRecipe.getCategory(this.category()));
|
|
+ return recipe;
|
|
+ // Paper - make CraftComplexRecipe extend CraftingRecipe - end
|
|
}
|
|
// CraftBukkit end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftComplexRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftComplexRecipe.java
|
|
index dcaeaa3367351eb54e2cf8e62be19ecc125a4bb4..05f42ec6177218960b22dc2c224f63cbf37d696f 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftComplexRecipe.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftComplexRecipe.java
|
|
@@ -9,12 +9,17 @@ import org.bukkit.craftbukkit.util.CraftNamespacedKey;
|
|
import org.bukkit.inventory.ComplexRecipe;
|
|
import org.bukkit.inventory.ItemStack;
|
|
|
|
-public class CraftComplexRecipe implements CraftRecipe, ComplexRecipe {
|
|
+public class CraftComplexRecipe extends org.bukkit.inventory.CraftingRecipe implements CraftRecipe, ComplexRecipe { // Paper - make CraftComplexRecipe extend CraftingRecipe
|
|
|
|
private final NamespacedKey key;
|
|
private final CustomRecipe recipe;
|
|
|
|
public CraftComplexRecipe(NamespacedKey key, CustomRecipe recipe) {
|
|
+ // Paper - make CraftComplexRecipe extend CraftingRecipe - start
|
|
+ super();
|
|
+ super.key = key;
|
|
+ super.output = ItemStack.empty();
|
|
+ // Paper - make CraftComplexRecipe extend CraftingRecipe - end
|
|
this.key = key;
|
|
this.recipe = recipe;
|
|
}
|