diff options
| author | LMBishop <13875753+LMBishop@users.noreply.github.com> | 2022-07-06 18:51:18 +0100 |
|---|---|---|
| committer | LMBishop <13875753+LMBishop@users.noreply.github.com> | 2022-07-06 18:51:18 +0100 |
| commit | c9a47f73f58312f5f7af4c8c3faaaac2c0d4ef0b (patch) | |
| tree | 64f278067027e8c7e143bd66972249b747a56520 /bukkit/src | |
| parent | 12ebaa52428f0b26c55736f67986d07494c75420 (diff) | |
Add wildcard to debug command
Diffstat (limited to 'bukkit/src')
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugQuestCommandHandler.java | 26 | ||||
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/TabHelper.java | 6 |
2 files changed, 22 insertions, 10 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugQuestCommandHandler.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugQuestCommandHandler.java index 4a32aae3..f1aa2eac 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugQuestCommandHandler.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugQuestCommandHandler.java @@ -49,14 +49,18 @@ public class AdminDebugQuestCommandHandler implements CommandHandler { } String questId = args[3]; - Quest quest = plugin.getQuestManager().getQuestById(questId); - if (quest == null) { - sender.sendMessage(ChatColor.RED + "Quest " + questId + " does not exist."); - return; + if (!questId.equals("*")) { + Quest quest = plugin.getQuestManager().getQuestById(questId); + if (quest == null) { + sender.sendMessage(ChatColor.RED + "Quest " + questId + " does not exist."); + return; + } } + QPlayerPreferences preferences = qPlayer.getPlayerPreferences(); QPlayerPreferences.DebugType currentDebugType = preferences.getDebug(questId); + String questName = questId.equals("*") ? "all quests" : "quest " + questId; if (currentDebugType == null) { if (args.length < 5) { sender.sendMessage(ChatColor.RED + "You must specify a debug type."); @@ -74,14 +78,16 @@ public class AdminDebugQuestCommandHandler implements CommandHandler { } preferences.setDebug(questId, debugTypeEnum); - sender.sendMessage(ChatColor.GREEN + "Debugging enabled for quest '" + questId + "'."); - sender.sendMessage(ChatColor.GRAY + "You will now see debug logs for quest '" + quest.getId() + "' for " + - (debugTypeEnum == QPlayerPreferences.DebugType.SELF ? "yourself" : "everybody on the server") + + sender.sendMessage(ChatColor.GREEN + "Debugging enabled for " + questName + "."); + sender.sendMessage(ChatColor.GRAY + "You will now see debug logs for " + + questName + + " for " + + (debugTypeEnum == QPlayerPreferences.DebugType.SELF ? "yourself" : "everybody on the server") + ". This may generate a lot of spam."); - sender.sendMessage(ChatColor.DARK_GRAY + "Use '/quests admin debug " + questId + "' to disable."); + sender.sendMessage(ChatColor.GRAY + "Use '/quests admin debug " + questId + "' to disable."); } else { preferences.setDebug(questId, null); - sender.sendMessage(ChatColor.GREEN + "Debugging disabled for quest '" + questId + "'."); + sender.sendMessage(ChatColor.GREEN + "Debugging disabled for " + questName + "."); } } else { @@ -92,7 +98,7 @@ public class AdminDebugQuestCommandHandler implements CommandHandler { @Override public List<String> tabComplete(CommandSender sender, String[] args) { if (args.length == 4) { - return TabHelper.tabCompleteQuests(args[3]); + return TabHelper.tabCompleteQuestsOrWildcard(args[3]); } else if (args.length == 5) { return TabHelper.matchTabComplete(args[4], Arrays.asList("self", "all")); } diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/TabHelper.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/TabHelper.java index fe212e60..ff92c82f 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/TabHelper.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/TabHelper.java @@ -36,4 +36,10 @@ public class TabHelper { return matchTabComplete(arg, options); } + public static List<String> tabCompleteQuestsOrWildcard(String arg) { + List<String> options = new ArrayList<>(plugin.getQuestManager().getQuests().keySet()); + options.add("*"); + return matchTabComplete(arg, options); + } + } |
