From 8eb0c85fa0a4600d9fcb3e5c11cc3afb02b89429 Mon Sep 17 00:00:00 2001 From: Krakenied Date: Thu, 24 Jul 2025 19:04:20 +0200 Subject: Reorder MythicMobs version checks Add missing fixed quest item cache clears on ready Mark EvenMoreFish task types as untested --- .../leonardobishop/quests/bukkit/BukkitQuestsPlugin.java | 4 ++-- .../quests/bukkit/tasktype/type/CompostingTaskType.java | 5 +++++ .../quests/bukkit/tasktype/type/DealDamageTaskType.java | 5 +++++ .../type/dependent/MythicMobsKillingTaskType.java | 16 ++++++++-------- 4 files changed, 20 insertions(+), 10 deletions(-) (limited to 'bukkit/src/main') diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/BukkitQuestsPlugin.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/BukkitQuestsPlugin.java index b7e4ebdd..6834e681 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/BukkitQuestsPlugin.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/BukkitQuestsPlugin.java @@ -505,8 +505,8 @@ public class BukkitQuestsPlugin extends JavaPlugin implements Quests { taskTypeManager.registerTaskType(() -> new EcoMobsKillingTaskType(this), () -> CompatUtils.isPluginEnabled("EcoMobs")); taskTypeManager.registerTaskType(() -> new EssentialsBalanceTaskType(this), () -> CompatUtils.isPluginEnabled("Essentials")); taskTypeManager.registerTaskType(() -> new EssentialsMoneyEarnTaskType(this), () -> CompatUtils.isPluginEnabled("Essentials")); - taskTypeManager.registerTaskType(() -> new EvenMoreFishFishingTaskType(this), () -> CompatUtils.isPluginEnabled("EvenMoreFish")); - taskTypeManager.registerTaskType(() -> new EvenMoreFishHuntingTaskType(this), () -> CompatUtils.isPluginEnabled("EvenMoreFish")); + taskTypeManager.registerTaskType(() -> new EvenMoreFishFishingTaskType(this), () -> CompatUtils.isPluginEnabled("EvenMoreFish")); // not tested + taskTypeManager.registerTaskType(() -> new EvenMoreFishHuntingTaskType(this), () -> CompatUtils.isPluginEnabled("EvenMoreFish")); // not tested taskTypeManager.registerTaskType(() -> new FabledSkyBlockLevelTaskType(this), () -> CompatUtils.isPluginEnabled("FabledSkyBlock")); // not tested taskTypeManager.registerTaskType(() -> new FancyNpcsDeliverTaskType(this), () -> CompatUtils.isPluginEnabled("FancyNpcs")); taskTypeManager.registerTaskType(() -> new FancyNpcsInteractTaskType(this), () -> CompatUtils.isPluginEnabled("FancyNpcs")); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java index a4aaa9eb..9bd48fc3 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/CompostingTaskType.java @@ -34,6 +34,11 @@ public final class CompostingTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); } + @Override + public void onReady() { + fixedQuestItemCache.clear(); + } + @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onEntityCompostItem(EntityCompostItemEvent event) { Entity entity = event.getEntity(); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DealDamageTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DealDamageTaskType.java index 1a9c384b..469f6c50 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DealDamageTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/DealDamageTaskType.java @@ -38,6 +38,11 @@ public final class DealDamageTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); } + @Override + public void onReady() { + fixedQuestItemCache.clear(); + } + @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onEntityDamage(EntityDamageEvent event) { Entity entity = event.getEntity(); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/dependent/MythicMobsKillingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/dependent/MythicMobsKillingTaskType.java index f481a5ac..331643af 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/dependent/MythicMobsKillingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/dependent/MythicMobsKillingTaskType.java @@ -33,13 +33,6 @@ public final class MythicMobsKillingTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "min-level")); super.addConfigValidator(TaskUtils.useEnumConfigValidator(this, TaskUtils.StringMatchMode.class, "name-match-mode")); - // MythicMobs 4 - try { - Class.forName("io.lumine.xikage.mythicmobs.api.bukkit.events.MythicMobDeathEvent"); - plugin.getServer().getPluginManager().registerEvents(new MythicMobs4Listener(), plugin); - return; - } catch (ClassNotFoundException | NoSuchFieldException ignored) { } // MythicMobs version cannot support task type - // MythicMobs 5 try { Class.forName("io.lumine.mythic.bukkit.events.MythicMobDeathEvent"); @@ -47,7 +40,14 @@ public final class MythicMobsKillingTaskType extends BukkitTaskType { return; } catch (ClassNotFoundException ignored) { } // MythicMobs version cannot support task type - plugin.getLogger().severe("Failed to register event handler for MythicMobs task type!"); + // MythicMobs 4 + try { + Class.forName("io.lumine.xikage.mythicmobs.api.bukkit.events.MythicMobDeathEvent"); + plugin.getServer().getPluginManager().registerEvents(new MythicMobs4Listener(), plugin); + return; + } catch (ClassNotFoundException | NoSuchFieldException ignored) { } // MythicMobs version cannot support task type + + plugin.getLogger().severe("Failed to register event handler for MythicMobs killing task type!"); plugin.getLogger().severe("MythicMobs version detected: " + CompatUtils.getPluginVersion("MythicMobs")); } -- cgit v1.2.3-70-g09d2