From 7b30278054dd2975115e163bbe721f60724df899 Mon Sep 17 00:00:00 2001 From: Bukkit/Spigot Date: Tue, 16 Jan 2024 07:38:51 +1100 Subject: [PATCH] SPIGOT-6921, #957: Add methods to remove all enchantments on an ItemStack By: Nothixal --- .../src/main/java/org/bukkit/inventory/ItemStack.java | 11 +++++++++++ .../main/java/org/bukkit/inventory/meta/ItemMeta.java | 5 +++++ 2 files changed, 16 insertions(+) diff --git a/paper-api/src/main/java/org/bukkit/inventory/ItemStack.java b/paper-api/src/main/java/org/bukkit/inventory/ItemStack.java index d80b0a5296..88cdce67e6 100644 --- a/paper-api/src/main/java/org/bukkit/inventory/ItemStack.java +++ b/paper-api/src/main/java/org/bukkit/inventory/ItemStack.java @@ -449,6 +449,17 @@ public class ItemStack implements Cloneable, ConfigurationSerializable, Translat return level; } + /** + * Removes all enchantments on this ItemStack. + */ + public void removeEnchantments() { + if (meta == null) { + return; + } + + meta.removeEnchantments(); + } + @Override @NotNull @Utility diff --git a/paper-api/src/main/java/org/bukkit/inventory/meta/ItemMeta.java b/paper-api/src/main/java/org/bukkit/inventory/meta/ItemMeta.java index 8ca9605fc1..9f159ac909 100644 --- a/paper-api/src/main/java/org/bukkit/inventory/meta/ItemMeta.java +++ b/paper-api/src/main/java/org/bukkit/inventory/meta/ItemMeta.java @@ -187,6 +187,11 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste */ boolean removeEnchant(@NotNull Enchantment ench); + /** + * Removes all enchantments from this item meta. + */ + void removeEnchantments(); + /** * Checks if the specified enchantment conflicts with any enchantments in * this ItemMeta.