mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-30 16:19:03 +01:00
Make CraftComplexRecipe extend CraftingRecipe (#11114)
This commit is contained in:
parent
e71c1df54c
commit
968bdeb46f
4 changed files with 77 additions and 0 deletions
|
@ -0,0 +1,27 @@
|
||||||
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Bjarne Koll <lynxplay101@gmail.com>
|
||||||
|
Date: Fri, 19 Jul 2024 19:09:21 +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/org/bukkit/inventory/CraftingRecipe.java b/src/main/java/org/bukkit/inventory/CraftingRecipe.java
|
||||||
|
index 37024b4736dd3897490ca51d08cf07901b01d59f..afa3de9ab78d01c448d450d8afbc7b1e7e62754c 100644
|
||||||
|
--- a/src/main/java/org/bukkit/inventory/CraftingRecipe.java
|
||||||
|
+++ b/src/main/java/org/bukkit/inventory/CraftingRecipe.java
|
||||||
|
@@ -11,8 +11,11 @@ import org.jetbrains.annotations.NotNull;
|
||||||
|
* Represents a shaped or shapeless crafting recipe.
|
||||||
|
*/
|
||||||
|
public abstract class CraftingRecipe implements Recipe, Keyed {
|
||||||
|
- private final NamespacedKey key;
|
||||||
|
- private final ItemStack output;
|
||||||
|
+ // Paper - make CraftComplexRecipe extend CraftingRecipe - start
|
||||||
|
+ protected NamespacedKey key;
|
||||||
|
+ protected ItemStack output;
|
||||||
|
+ protected CraftingRecipe() {}
|
||||||
|
+ // Paper - make CraftComplexRecipe extend CraftingRecipe - end
|
||||||
|
private String group = "";
|
||||||
|
private CraftingBookCategory category = CraftingBookCategory.MISC;
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
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;
|
||||||
|
}
|
Loading…
Reference in a new issue