From 6f3ecc726fefdab6dbbebbdcceca46d27c2c3c89 Mon Sep 17 00:00:00 2001 From: Auxilor Date: Tue, 7 Dec 2021 08:24:28 +0000 Subject: [PATCH] Fixed canEnchantItem with singular types --- .../willfp/ecoenchants/enchantments/EcoEnchant.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/EcoEnchant.java b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/EcoEnchant.java index cacd9a54..ccf73fcc 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/EcoEnchant.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/ecoenchants/enchantments/EcoEnchant.java @@ -445,7 +445,15 @@ public abstract class EcoEnchant extends Enchantment implements Listener, Watche */ @Override public boolean canEnchantItem(@NotNull final ItemStack itemStack) { - return targetMaterials.contains(itemStack.getType()) || itemStack.getType().equals(Material.BOOK) || itemStack.getType().equals(Material.ENCHANTED_BOOK); + if (this.type.isSingular() && EcoEnchants.hasAnyOfType(itemStack, this.type)) { + return false; + } + + if (itemStack.getType() == Material.BOOK || itemStack.getType() == Material.ENCHANTED_BOOK) { + return true; + } + + return targetMaterials.contains(itemStack.getType()); } /**