From fc033460b4449bd11a93ce4b487489df132f9361 Mon Sep 17 00:00:00 2001 From: alexcrea <42614139+alexcrea@users.noreply.github.com> Date: Sun, 16 Jun 2024 20:58:50 +0200 Subject: [PATCH] Use correct default. Also disable Enchantment Squared anvil listener. --- src/main/kotlin/io/delilaheve/AnvilEventListener.kt | 2 +- src/main/kotlin/io/delilaheve/util/ConfigOptions.kt | 11 +++++++++++ .../alexcrea/cuanvil/dependency/DependencyManager.kt | 7 ++++--- .../dependency/EnchantmentSquaredDependency.kt | 6 ++++++ 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/io/delilaheve/AnvilEventListener.kt b/src/main/kotlin/io/delilaheve/AnvilEventListener.kt index 7758daf..a44a7c4 100644 --- a/src/main/kotlin/io/delilaheve/AnvilEventListener.kt +++ b/src/main/kotlin/io/delilaheve/AnvilEventListener.kt @@ -460,7 +460,7 @@ class AnvilEventListener(private val packetManager: PacketManager) : Listener { val enchantmentMultiplier = ConfigOptions.enchantmentValue(enchantment.key, rightIsFormBook) val value = resultLevel * enchantmentMultiplier - CustomAnvil.log("Value for ${enchantment.key.enchantmentName} level ${enchantment.value} is $value") + CustomAnvil.log("Value for ${enchantment.key.enchantmentName} level ${enchantment.value} is $value ($resultLevel * $enchantmentMultiplier)") rightValue += value } diff --git a/src/main/kotlin/io/delilaheve/util/ConfigOptions.kt b/src/main/kotlin/io/delilaheve/util/ConfigOptions.kt index 0fefdf2..6ad9445 100644 --- a/src/main/kotlin/io/delilaheve/util/ConfigOptions.kt +++ b/src/main/kotlin/io/delilaheve/util/ConfigOptions.kt @@ -306,6 +306,17 @@ object ConfigOptions { if(enchantmentName == "sweeping_edge"){ return enchantmentValue("sweeping", isFromBook) } + + val enchantment = WrappedEnchantment.getByName(enchantmentName) + if(enchantment != null){ + val rarity = enchantment.defaultRarity() + if(rarity != null){ + return if(isFromBook) rarity.bookValue + else rarity.itemValue + + } + } + return DEFAULT_ENCHANT_VALUE } diff --git a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DependencyManager.kt b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DependencyManager.kt index 5da292c..beb5c3f 100644 --- a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DependencyManager.kt +++ b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DependencyManager.kt @@ -19,9 +19,10 @@ object DependencyManager { else NoProtocoLib() // Enchantment Squared dependency - enchantmentSquaredCompatibility = - if(pluginManager.isPluginEnabled("EnchantsSquared")) EnchantmentSquaredDependency(pluginManager.getPlugin("EnchantsSquared")!!) - else null + if(pluginManager.isPluginEnabled("EnchantsSquared")){ + enchantmentSquaredCompatibility = EnchantmentSquaredDependency(pluginManager.getPlugin("EnchantsSquared")!!) + enchantmentSquaredCompatibility!!.disableAnvilListener() + } } diff --git a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/EnchantmentSquaredDependency.kt b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/EnchantmentSquaredDependency.kt index 02661ca..b0732ec 100644 --- a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/EnchantmentSquaredDependency.kt +++ b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/EnchantmentSquaredDependency.kt @@ -3,6 +3,7 @@ package xyz.alexcrea.cuanvil.dependency import me.athlaeos.enchantssquared.enchantments.CustomEnchant import me.athlaeos.enchantssquared.managers.CustomEnchantManager import org.bukkit.NamespacedKey +import org.bukkit.event.inventory.PrepareAnvilEvent import org.bukkit.inventory.ItemStack import org.bukkit.plugin.Plugin import xyz.alexcrea.cuanvil.enchant.WrappedEnchantment @@ -11,6 +12,11 @@ import java.util.* class EnchantmentSquaredDependency(private val enchantmentSquaredPlugin: Plugin) { + fun disableAnvilListener(){ + PrepareAnvilEvent.getHandlerList().unregister(this.enchantmentSquaredPlugin) + + } + fun registerEnchantments(){ for (enchant in CustomEnchantManager.getInstance().allEnchants.values) { WrappedEnchantment.register(EnchantSquaredEnchantment(enchant))