From 05e5865da30d072e729d4681d02a316f6ae072fa Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Mon, 15 Jul 2024 07:38:20 -0700 Subject: [PATCH] Add ItemType#getItemRarity (#11049) --- .../api/0254-Improve-Item-Rarity-API.patch | 18 +++++++++++++++ .../1041-Add-ItemType-getItemRarity.patch | 23 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 patches/server/1041-Add-ItemType-getItemRarity.patch diff --git a/patches/api/0254-Improve-Item-Rarity-API.patch b/patches/api/0254-Improve-Item-Rarity-API.patch index 4a53134873..0882e2924c 100644 --- a/patches/api/0254-Improve-Item-Rarity-API.patch +++ b/patches/api/0254-Improve-Item-Rarity-API.patch @@ -131,3 +131,21 @@ index ef36a696f2f926d70c5d93ce08f75fa9a749e32f..fb1d7ff51f267225ac76c29a56d67fb4 + } // Paper end } +diff --git a/src/main/java/org/bukkit/inventory/ItemType.java b/src/main/java/org/bukkit/inventory/ItemType.java +index 5dd1c084e42ee93f3a358f58ed76b0a7d36f0713..2b5a18fe7e885fa9b581c0afb299e31f3db2690c 100644 +--- a/src/main/java/org/bukkit/inventory/ItemType.java ++++ b/src/main/java/org/bukkit/inventory/ItemType.java +@@ -2311,4 +2311,13 @@ public interface ItemType extends Keyed, Translatable, net.kyori.adventure.trans + @Override + @NotNull String getTranslationKey(); + // Paper end - add Translatable ++ ++ // Paper start - expand ItemRarity API ++ /** ++ * Returns the item rarity for the item. ++ * ++ * @return the item rarity (or null if none is set) ++ */ ++ @Nullable ItemRarity getItemRarity(); ++ // Paper end - expand ItemRarity API + } diff --git a/patches/server/1041-Add-ItemType-getItemRarity.patch b/patches/server/1041-Add-ItemType-getItemRarity.patch new file mode 100644 index 0000000000..35ebf5036b --- /dev/null +++ b/patches/server/1041-Add-ItemType-getItemRarity.patch @@ -0,0 +1,23 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jake Potrebic +Date: Tue, 9 Jul 2024 18:37:37 -0700 +Subject: [PATCH] Add ItemType#getItemRarity + + +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java +index bae3dd5fc67e6b3d98a5e63ffbf639c5042f8843..450c63c31d2f5d056d989aa00452231f50c8224d 100644 +--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java ++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java +@@ -265,4 +265,12 @@ public class CraftItemType implements ItemType.Typed, Han + return this.item.getDescriptionId(); + } + // Paper end - add Translatable ++ ++ // Paper start - expand ItemRarity API ++ @Override ++ public org.bukkit.inventory.ItemRarity getItemRarity() { ++ final net.minecraft.world.item.Rarity rarity = this.item.components().get(DataComponents.RARITY); ++ return rarity == null ? null : org.bukkit.inventory.ItemRarity.valueOf(rarity.name()); ++ } ++ // Paper end - expand ItemRarity API + }