aboutsummaryrefslogtreecommitdiffstats
path: root/bukkit/src/main/java/com/leonardobishop
diff options
context:
space:
mode:
Diffstat (limited to 'bukkit/src/main/java/com/leonardobishop')
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugPlayerCommandHandler.java23
1 files changed, 22 insertions, 1 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugPlayerCommandHandler.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugPlayerCommandHandler.java
index de6ccd07..959708bd 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugPlayerCommandHandler.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugPlayerCommandHandler.java
@@ -1,9 +1,11 @@
package com.leonardobishop.quests.bukkit.command;
import com.leonardobishop.quests.bukkit.BukkitQuestsPlugin;
+import com.leonardobishop.quests.bukkit.util.FormatUtils;
import com.leonardobishop.quests.common.player.QPlayer;
import com.leonardobishop.quests.common.player.questprogressfile.QuestProgress;
import com.leonardobishop.quests.common.player.questprogressfile.QuestProgressFile;
+import com.leonardobishop.quests.common.player.questprogressfile.TaskProgress;
import com.leonardobishop.quests.common.player.questprogressfile.filters.QuestProgressFilter;
import com.leonardobishop.quests.common.quest.Quest;
import com.leonardobishop.quests.common.quest.Task;
@@ -13,6 +15,8 @@ import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.Nullable;
+import java.math.BigDecimal;
+import java.math.BigInteger;
import java.util.Iterator;
import java.util.List;
@@ -65,10 +69,27 @@ public class AdminDebugPlayerCommandHandler implements CommandHandler {
while (taskIter.hasNext()) {
Task task = taskIter.next();
+ TaskProgress tp = qp.getTaskProgressOrNull(task.getId());
+
+ String progressString;
+ if (tp != null) {
+ Object progress = tp.getProgress();
+ if (progress instanceof Float || progress instanceof Double || progress instanceof BigDecimal) {
+ progressString = FormatUtils.floating((Number) progress);
+ } else if (progress instanceof Integer || progress instanceof Long || progress instanceof BigInteger) {
+ progressString = FormatUtils.integral((Number) progress);
+ } else if (progress != null) {
+ progressString = String.valueOf(progress);
+ } else {
+ progressString = "init";
+ }
+ } else {
+ progressString = "null";
+ }
sb.append(task.getId());
sb.append("{");
- sb.append(qp.getTaskProgressOrNull(task.getId()));
+ sb.append(progressString);
sb.append("}");
if (taskIter.hasNext()) {