aboutsummaryrefslogtreecommitdiffstats
path: root/src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java
diff options
context:
space:
mode:
authorfatpigsarefat <fatpigsarefat@outlook.com>2018-06-01 17:02:28 +0100
committerfatpigsarefat <fatpigsarefat@outlook.com>2018-06-01 17:02:28 +0100
commit1a6e7098c43efcd3d21dc578c8983eba9dcb6de1 (patch)
tree85ba34fdb97b3eaf34969f34da81292684109a93 /src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java
parent0058e6b4b56b45568ddf04f27c7d6273a5c1aa23 (diff)
Right click to cancel quests, closes #9
Diffstat (limited to 'src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java')
-rw-r--r--src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java b/src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java
index 4b1b13c1..95473e8d 100644
--- a/src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java
+++ b/src/me/fatpigsarefat/quests/player/questprogressfile/QuestProgressFile.java
@@ -105,6 +105,24 @@ public class QuestProgressFile {
return 0;
}
+ public boolean cancelQuest(Quest quest) {
+ QuestProgress questProgress = getQuestProgress(quest);
+ if (!questProgress.isStarted()) {
+ if (Bukkit.getPlayer(player) != null) {
+ Bukkit.getPlayer(getPlayer()).sendMessage(Messages.QUEST_CANCEL_NOTSTARTED.getMessage());
+ }
+ return false;
+ }
+ questProgress.setStarted(false);
+ for (TaskProgress taskProgress : questProgress.getTaskProgress()) {
+ taskProgress.setProgress(null);
+ }
+ if (Bukkit.getPlayer(player) != null) {
+ Bukkit.getPlayer(getPlayer()).sendMessage(Messages.QUEST_CANCEL.getMessage().replace("{quest}", quest.getDisplayNameStripped()));
+ }
+ return true;
+ }
+
public void addQuestProgress(QuestProgress questProgress) {
this.questProgress.put(questProgress.getQuestId(), questProgress);
}