2019-03-20 00:28:15 +00:00
From fdf1b7fd4ed6b12ec92df144e1961d3e5b198d61 Mon Sep 17 00:00:00 2001
2017-12-09 17:42:11 +00:00
From: Aikar <aikar@aikar.co>
Date: Sat, 9 Dec 2017 12:40:25 -0500
Subject: [PATCH] Display warning on deprecated recipe API
Any plugin still using this API will result in the server saving an inconsistent UUID to player data files,
which then triggers warnings such as "Tried to load unrecognized recipe: bukkit:9e5b92f5-e549-4f47-b0a8-9f89390ed77b removed now."
on the players login.
Plugin authors need to define a key to keep it consistent between server restarts.
diff --git a/src/main/java/org/bukkit/inventory/ShapedRecipe.java b/src/main/java/org/bukkit/inventory/ShapedRecipe.java
2019-03-20 00:28:15 +00:00
index 77e6ccf5..64a43f42 100644
2017-12-09 17:42:11 +00:00
--- a/src/main/java/org/bukkit/inventory/ShapedRecipe.java
+++ b/src/main/java/org/bukkit/inventory/ShapedRecipe.java
2019-03-20 00:28:15 +00:00
@@ -26,6 +26,7 @@ public class ShapedRecipe implements Recipe, Keyed {
2017-12-09 17:42:11 +00:00
@Deprecated
2019-03-20 00:28:15 +00:00
public ShapedRecipe(@NotNull ItemStack result) {
2017-12-09 17:42:11 +00:00
this.key = NamespacedKey.randomKey();
+ new Throwable("Warning: A plugin is creating a recipe using a Deprecated method. This will cause you to receive warnings stating 'Tried to load unrecognized recipe: bukkit:<ID>'. Please ask the author to give their recipe a static key using NamespacedKey.").printStackTrace();
this.output = new ItemStack(result);
}
diff --git a/src/main/java/org/bukkit/inventory/ShapelessRecipe.java b/src/main/java/org/bukkit/inventory/ShapelessRecipe.java
2019-03-20 00:28:15 +00:00
index a8d5f330..46a398e8 100644
2017-12-09 17:42:11 +00:00
--- a/src/main/java/org/bukkit/inventory/ShapelessRecipe.java
+++ b/src/main/java/org/bukkit/inventory/ShapelessRecipe.java
2019-03-20 00:28:15 +00:00
@@ -27,6 +27,7 @@ public class ShapelessRecipe implements Recipe, Keyed {
2017-12-09 17:42:11 +00:00
@Deprecated
2019-03-20 00:28:15 +00:00
public ShapelessRecipe(@NotNull ItemStack result) {
2017-12-09 17:42:11 +00:00
this.key = NamespacedKey.randomKey();
+ new Throwable("Warning: A plugin is creating a recipe using a Deprecated method. This will cause you to receive warnings stating 'Tried to load unrecognized recipe: bukkit:<ID>'. Please ask the author to give their recipe a static key using NamespacedKey.").printStackTrace();
this.output = new ItemStack(result);
}
--
2019-03-20 00:28:15 +00:00
2.21.0
2017-12-09 17:42:11 +00:00