Add ItemType#getItemRarity (#11049)

This commit is contained in:
Jake Potrebic 2024-07-15 07:38:20 -07:00
parent 5e9272f83c
commit 14b789b68a
2 changed files with 41 additions and 0 deletions

View file

@ -131,3 +131,21 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ }
// Paper end
}
diff --git a/src/main/java/org/bukkit/inventory/ItemType.java b/src/main/java/org/bukkit/inventory/ItemType.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/inventory/ItemType.java
+++ b/src/main/java/org/bukkit/inventory/ItemType.java
@@ -0,0 +0,0 @@ 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
}

View file

@ -0,0 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java
@@ -0,0 +0,0 @@ public class CraftItemType<M extends ItemMeta> implements ItemType.Typed<M>, 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
}