From e2e7b660d9c5926b6eb29ae89868ec47350f9681 Mon Sep 17 00:00:00 2001 From: Kam Date: Wed, 10 May 2023 16:46:57 -0400 Subject: [PATCH] Renovate KAMKEEL Quest Command --- src/main/java/kamkeel/QuestCommand.java | 44 +++++++++++++++++-------- 1 file changed, 31 insertions(+), 13 deletions(-) diff --git a/src/main/java/kamkeel/QuestCommand.java b/src/main/java/kamkeel/QuestCommand.java index 4e039d5ad..278f12518 100644 --- a/src/main/java/kamkeel/QuestCommand.java +++ b/src/main/java/kamkeel/QuestCommand.java @@ -36,18 +36,21 @@ public class QuestCommand extends CommandKamkeelBase { try { questid = Integer.parseInt(args[1]); } catch (NumberFormatException ex) { - throw new CommandException("QuestID must be an integer: " + args[1]); + sendError(sender, "QuestID must be an integer: " + args[1]); + return; } List data = PlayerDataController.instance.getPlayersData(sender, playername); if (data.isEmpty()) { - throw new CommandException("Unknown player: " + playername); + sendError(sender, "Unknown player: " + playername); + return; } Quest quest = QuestController.instance.quests.get(questid); if (quest == null){ - throw new CommandException("Unknown QuestID: " + questid); + sendError(sender, "Unknown QuestID: " + questid); + return; } for(PlayerData playerdata : data){ @@ -58,6 +61,7 @@ public class QuestCommand extends CommandKamkeelBase { Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.newquest", quest.title); Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.newquest", ": ", quest.title); } + sendResult(sender, String.format("Started Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername)); } } @@ -72,17 +76,20 @@ public class QuestCommand extends CommandKamkeelBase { questid = Integer.parseInt(args[1]); } catch (NumberFormatException ex) { - throw new CommandException("QuestID must be an integer: " + args[1]); + sendError(sender, "QuestID must be an integer: " + args[1]); + return; } List data = PlayerDataController.instance.getPlayersData(sender, playername); if (data.isEmpty()) { - throw new CommandException(String.format("Unknow player '%s'", playername)); + sendError(sender, String.format("Unknown player '%s'", playername)); + return; } Quest quest = QuestController.instance.quests.get(questid); if (quest == null){ - throw new CommandException("Unknown QuestID: " + questid); + sendError(sender, "Unknown QuestID: " + questid); + return; } for(PlayerData playerdata : data){ if(playerdata.questData.activeQuests.containsKey(questid)){ @@ -95,6 +102,7 @@ public class QuestCommand extends CommandKamkeelBase { Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.MESSAGE, "quest.completed", quest.title); Server.sendData((EntityPlayerMP)playerdata.player, EnumPacketClient.CHAT, "quest.completed", ": ", quest.title); } + sendResult(sender, String.format("Finished Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername)); } } @@ -108,19 +116,23 @@ public class QuestCommand extends CommandKamkeelBase { try { questid = Integer.parseInt(args[1]); } catch (NumberFormatException ex) { - throw new CommandException("QuestID must be an integer: " + args[1]); + sendError(sender, "QuestID must be an integer: " + args[1]); + return; } List data = PlayerDataController.instance.getPlayersData(sender, playername); if (data.isEmpty()) { - throw new CommandException(String.format("Unknow player '%s'", playername)); + sendError(sender, String.format("Unknown player '%s'", playername)); + return; } Quest quest = QuestController.instance.quests.get(questid); if (quest == null){ - throw new CommandException("Unknown QuestID: " + questid); + sendError(sender, "Unknown QuestID: " + questid); + return; } for(PlayerData playerdata : data){ playerdata.questData.activeQuests.remove(questid); playerdata.savePlayerDataOnFile(); + sendResult(sender, String.format("Stopped Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername)); } } @@ -134,23 +146,27 @@ public class QuestCommand extends CommandKamkeelBase { try { questid = Integer.parseInt(args[1]); } catch (NumberFormatException ex) { - throw new CommandException("QuestID must be an integer: " + args[1]); + sendError(sender, "QuestID must be an integer: " + args[1]); + return; } List data = PlayerDataController.instance.getPlayersData(sender, playername); if (data.isEmpty()) { - throw new CommandException(String.format("Unknown player '%s'", playername)); + sendError(sender, String.format("Unknown player '%s'", playername)); + return; } Quest quest = QuestController.instance.quests.get(questid); if (quest == null){ - throw new CommandException(String.format("Unknown QuestID")); + sendError(sender, String.format("Unknown QuestID")); + return; } for(PlayerData playerdata : data){ playerdata.questData.activeQuests.remove(questid); playerdata.questData.finishedQuests.remove(questid); playerdata.savePlayerDataOnFile(); + sendResult(sender, String.format("Removed Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername)); } } @@ -159,7 +175,9 @@ public class QuestCommand extends CommandKamkeelBase { permission = 4 ) public void reload(ICommandSender sender, String args[]){ - new DialogController(); + new QuestController(); + QuestController.instance.load(); + sendResult(sender, "Quests Reloaded"); } }