From 1d191413fb72089198bc9fdffc41aff4778561dc Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 2 Jan 2026 03:58:52 +0000 Subject: [PATCH] Fix quest cooldown not working for MCCUSTOM and RLCUSTOM types The canQuestBeAccepted() method was missing cases for MCCUSTOM and RLCUSTOM repeat types, causing quests with custom cooldowns to become permanently inaccessible after first completion. Added the missing checks using quest.customCooldown for both MC ticks and real-life milliseconds. --- .../java/noppes/npcs/controllers/PlayerQuestController.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/noppes/npcs/controllers/PlayerQuestController.java b/src/main/java/noppes/npcs/controllers/PlayerQuestController.java index e08203136..7b99f40d8 100644 --- a/src/main/java/noppes/npcs/controllers/PlayerQuestController.java +++ b/src/main/java/noppes/npcs/controllers/PlayerQuestController.java @@ -136,10 +136,14 @@ public class PlayerQuestController { return player.worldObj.getTotalWorldTime() - questTime >= 24000; } else if (quest.repeat == EnumQuestRepeat.MCWEEKLY) { return player.worldObj.getTotalWorldTime() - questTime >= 168000; + } else if (quest.repeat == EnumQuestRepeat.MCCUSTOM) { + return player.worldObj.getTotalWorldTime() - questTime >= quest.customCooldown; } else if (quest.repeat == EnumQuestRepeat.RLDAILY) { return System.currentTimeMillis() - questTime >= 86400000; } else if (quest.repeat == EnumQuestRepeat.RLWEEKLY) { return System.currentTimeMillis() - questTime >= 604800000; + } else if (quest.repeat == EnumQuestRepeat.RLCUSTOM) { + return System.currentTimeMillis() - questTime >= quest.customCooldown; } return false; }