From 7a21e621ddebdccc80234ea4828a36509aa3f6c1 Mon Sep 17 00:00:00 2001 From: fatpigsarefat Date: Wed, 25 Jul 2018 19:22:53 +0100 Subject: Added quest cancel gui - config.yml was updated with new items - QMenuCancel.java and EventInventory.java added for the gui - pom.xml version changed to 2.0.11 --- .../quests/events/EventInventory.java | 24 ++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'src/main/java/me/fatpigsarefat/quests/events') diff --git a/src/main/java/me/fatpigsarefat/quests/events/EventInventory.java b/src/main/java/me/fatpigsarefat/quests/events/EventInventory.java index 9911c216..1e5cec26 100644 --- a/src/main/java/me/fatpigsarefat/quests/events/EventInventory.java +++ b/src/main/java/me/fatpigsarefat/quests/events/EventInventory.java @@ -3,6 +3,7 @@ package me.fatpigsarefat.quests.events; import me.fatpigsarefat.quests.Quests; import me.fatpigsarefat.quests.obj.Options; import me.fatpigsarefat.quests.obj.misc.QMenu; +import me.fatpigsarefat.quests.obj.misc.QMenuCancel; import me.fatpigsarefat.quests.obj.misc.QMenuCategory; import me.fatpigsarefat.quests.obj.misc.QMenuQuest; import me.fatpigsarefat.quests.quests.Quest; @@ -56,10 +57,11 @@ public class EventInventory implements Listener { if (qMenuQuest.getOwner().getQuestProgressFile().startQuest(quest) == 0) { event.getWhoClicked().closeInventory(); } - } else if (event.getClick() == ClickType.RIGHT) { - if (qMenuQuest.getOwner().getQuestProgressFile().cancelQuest(quest)) { - event.getWhoClicked().closeInventory(); - } + } else if (event.getClick() == ClickType.RIGHT && Options.ALLOW_QUEST_CANCEL.getBooleanValue()) { + QMenuCancel qMenuCancel = new QMenuCancel(qMenuQuest.getOwner(), qMenuQuest, quest); + buffer.add(event.getWhoClicked().getUniqueId()); + event.getWhoClicked().openInventory(qMenuCancel.toInventory()); + tracker.put(event.getWhoClicked().getUniqueId(), qMenuCancel); } } } else if (qMenu instanceof QMenuCategory) { @@ -71,6 +73,20 @@ public class EventInventory implements Listener { event.getWhoClicked().openInventory(qMenuQuest.toInventory(1)); tracker.put(event.getWhoClicked().getUniqueId(), qMenuQuest); } + } else if (qMenu instanceof QMenuCancel) { + QMenuCancel qMenuCancel = (QMenuCancel) qMenu; + + event.setCancelled(true); + if (event.getSlot() == 10 || event.getSlot() == 11 || event.getSlot() == 12) { + QMenuQuest qMenuQuest = qMenuCancel.getSuperMenu(); + buffer.add(event.getWhoClicked().getUniqueId()); + event.getWhoClicked().openInventory(qMenuQuest.toInventory(1)); + tracker.put(event.getWhoClicked().getUniqueId(), qMenuQuest); + } else if (event.getSlot() == 14 || event.getSlot() == 15 || event.getSlot() == 16) { + if (qMenuCancel.getOwner().getQuestProgressFile().cancelQuest(qMenuCancel.getQuest())) { + event.getWhoClicked().closeInventory(); + } + } } } } -- cgit v1.2.3-70-g09d2