From 88f9d328626b4334edc32b3353c1154a10ec85ac Mon Sep 17 00:00:00 2001 From: BONNe Date: Sat, 19 Jan 2019 18:29:08 +0200 Subject: [PATCH] Implement Reset and Complete Challenge for ListUsersGUI. --- .../challenges/ChallengesManager.java | 12 ++++++++++ .../challenges/panel/admin/ListUsersGUI.java | 24 ++++++++++++++++--- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/src/main/java/world/bentobox/challenges/ChallengesManager.java b/src/main/java/world/bentobox/challenges/ChallengesManager.java index e4972c7..84e90b6 100644 --- a/src/main/java/world/bentobox/challenges/ChallengesManager.java +++ b/src/main/java/world/bentobox/challenges/ChallengesManager.java @@ -580,4 +580,16 @@ public class ChallengesManager { { } + + + public void resetChallenge(UUID uniqueId, Challenges value) + { + + } + + + public void completeChallenge(UUID uniqueId, Challenges value) + { + + } } diff --git a/src/main/java/world/bentobox/challenges/panel/admin/ListUsersGUI.java b/src/main/java/world/bentobox/challenges/panel/admin/ListUsersGUI.java index fc4612c..c4be7f8 100644 --- a/src/main/java/world/bentobox/challenges/panel/admin/ListUsersGUI.java +++ b/src/main/java/world/bentobox/challenges/panel/admin/ListUsersGUI.java @@ -14,8 +14,10 @@ import world.bentobox.bentobox.api.panels.builders.PanelBuilder; import world.bentobox.bentobox.api.panels.builders.PanelItemBuilder; import world.bentobox.bentobox.api.user.User; import world.bentobox.challenges.ChallengesAddon; +import world.bentobox.challenges.ChallengesManager; import world.bentobox.challenges.panel.CommonGUI; import world.bentobox.challenges.panel.util.ConfirmationGUI; +import world.bentobox.challenges.panel.util.SelectChallengeGUI; /** @@ -167,19 +169,35 @@ public class ListUsersGUI extends CommonGUI { return new PanelItemBuilder().name(player.getName()).icon(player.getName()).clickHandler( (panel, user1, clickType, slot) -> { + ChallengesManager manager = this.addon.getChallengesManager(); + switch (this.operationMode) { case COMPLETE: - // TODO: Open Complete Challenge GUI. + new SelectChallengeGUI(this.user, manager.getChallengesList(), (status, value) -> { + if (status) + { + manager.completeChallenge(player.getUniqueId(), value); + } + + this.build(); + }); break; case RESET: - // TODO: Open Reset Challenge GUI. + new SelectChallengeGUI(this.user, manager.getChallengesList(), (status, value) -> { + if (status) + { + manager.resetChallenge(player.getUniqueId(), value); + } + + this.build(); + }); break; case RESET_ALL: new ConfirmationGUI(this.user, status -> { if (status) { - this.addon.getChallengesManager().resetAllChallenges(this.user, this.world); + manager.resetAllChallenges(this.user, this.world); } }); break;