summaryrefslogtreecommitdiffstats
path: root/bukkit
diff options
context:
space:
mode:
authorKrakenied <Krakenied1@gmail.com>2024-08-28 12:16:08 +0200
committerKrakenied <46192742+Krakenied@users.noreply.github.com>2024-08-28 12:22:35 +0200
commit63c5cd0381fb66cfce260a7bdd0234c4f7636bdf (patch)
tree3ad0d4d13b48bdf99449e572a6003ba7fa60e047 /bukkit
parent658a6a25e245bb5b3b162d1ab88e2708cc80a3f0 (diff)
Do not return null for a negative cooldown placeholder
Fixes https://github.com/LMBishop/Quests/issues/669
Diffstat (limited to 'bukkit')
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/hook/papi/QuestsPlaceholders.java10
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/Messages.java1
2 files changed, 9 insertions, 2 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/hook/papi/QuestsPlaceholders.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/hook/papi/QuestsPlaceholders.java
index 6ada4e2a..7c988cba 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/hook/papi/QuestsPlaceholders.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/hook/papi/QuestsPlaceholders.java
@@ -181,8 +181,14 @@ public class QuestsPlaceholders extends PlaceholderExpansion implements Cacheabl
break;
case "cooldown":
if (qPlayer.getQuestProgressFile().getQuestProgress(quest).isCompleted()) {
- final String time = FormatUtils.time(TimeUnit.SECONDS.convert(qPlayer.getQuestProgressFile().getCooldownFor(quest), TimeUnit.MILLISECONDS));
- if (!time.startsWith("-")) result = time;
+ final long questCooldown = qPlayer.getQuestProgressFile().getCooldownFor(quest);
+ if (questCooldown > 0) {
+ final long questCooldownMillis = TimeUnit.SECONDS.convert(questCooldown, TimeUnit.MILLISECONDS);
+ result = FormatUtils.time(questCooldownMillis);
+ } else {
+ // TODO handle it in a more proper way after storage rework
+ result = Messages.PLACEHOLDERAPI_NO_COOLDOWN.getMessage();
+ }
} else {
result = "0";
}
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/Messages.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/Messages.java
index fc0035c9..a6ce007e 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/Messages.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/util/Messages.java
@@ -76,6 +76,7 @@ public enum Messages {
PLACEHOLDERAPI_FALSE("messages.placeholderapi-false", "false"),
PLACEHOLDERAPI_NO_TRACKED_QUEST("messages.placeholderapi-no-tracked-quest", "No tracked quest"),
PLACEHOLDERAPI_QUEST_NOT_STARTED("messages.placeholderapi-quest-not-started", "Quest not started"),
+ PLACEHOLDERAPI_NO_COOLDOWN("messages.placeholderapi-no-cooldown", "No cooldown"),
PLACEHOLDERAPI_NO_TIME_LIMIT("messages.placeholderapi-no-time-limit", "No time limit"),
PLACEHOLDERAPI_DATA_NOT_LOADED("messages.placeholderapi-data-not-loaded", "Data not loaded");