From a88bb7426567061511cfa2f9aa793d475a6d4961 Mon Sep 17 00:00:00 2001 From: Krakenied Date: Mon, 4 Aug 2025 20:42:12 +0200 Subject: Fix debug report after last changes --- .../command/AdminDebugReportCommandHandler.java | 39 +++++++++------------- 1 file changed, 15 insertions(+), 24 deletions(-) (limited to 'bukkit/src/main/java/com') diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java index 94efda58..5efca13e 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java @@ -236,32 +236,23 @@ public class AdminDebugReportCommandHandler implements CommandHandler { printMap(lines, 1, "Preferences", getFieldValues(preferences.getClass(), preferences)); QuestProgressFile questProgressFile = qPlayer.getQuestProgressFile(); - try { - Field questProgressField = questProgressFile.getClass().getDeclaredField("questProgress"); - questProgressField.setAccessible(true); - Map questProgressMap = (Map) questProgressField.get(questProgressFile); - Map questProgressValues = new LinkedHashMap<>(); - for (Map.Entry entry : questProgressMap.entrySet()) { - QuestProgress questProgress = entry.getValue(); - Map questProgressValue = getFieldValues(questProgress.getClass(), questProgress, "plugin", "taskProgress"); - - Field taskProgressField = questProgress.getClass().getDeclaredField("taskProgress"); - taskProgressField.setAccessible(true); - Map taskProgressMap = (Map) taskProgressField.get(questProgress); - Map taskProgressValues = new LinkedHashMap<>(); - for (Map.Entry taskEntry : taskProgressMap.entrySet()) { - TaskProgress taskProgress = taskEntry.getValue(); - taskProgressValues.put(taskEntry.getKey(), getFieldValues(taskProgress.getClass(), taskProgress, "plugin", "linkedQuestProgress")); - } - questProgressValue.put("taskProgress", taskProgressValues); - - questProgressValues.put(entry.getKey(), questProgressValue); + Map questProgressMap = questProgressFile.getQuestProgressMap(); + Map questProgressValues = new LinkedHashMap<>(); + for (Map.Entry entry : questProgressMap.entrySet()) { + QuestProgress questProgress = entry.getValue(); + Map questProgressValue = getFieldValues(questProgress.getClass(), questProgress, "plugin", "taskProgressMap"); + + Map taskProgressMap = questProgress.getTaskProgressMap(); + Map taskProgressValues = new LinkedHashMap<>(); + for (Map.Entry taskEntry : taskProgressMap.entrySet()) { + TaskProgress taskProgress = taskEntry.getValue(); + taskProgressValues.put(taskEntry.getKey(), getFieldValues(taskProgress.getClass(), taskProgress, "plugin", "questProgress")); } - printMap(lines, 1, "Quest progress", questProgressValues); - } catch (NoSuchFieldException | IllegalAccessException e) { - error("Failed to get quest progress for QPlayer " + qPlayer.getPlayerUUID() + ": " + e.getClass().getSimpleName() + "(" + e.getMessage() + ")"); - e.printStackTrace(); + questProgressValue.put("taskProgress", taskProgressValues); + + questProgressValues.put(entry.getKey(), questProgressValue); } + printMap(lines, 1, "Quest progress", questProgressValues); lines.add(" Quest controller: " + qPlayer.getQuestController().getName()); lines.add(""); } -- cgit v1.2.3-70-g09d2