From 4d3467a259e42d090ae54927178b80733202f025 Mon Sep 17 00:00:00 2001 From: Steffion Date: Wed, 28 Aug 2013 14:11:10 +0200 Subject: [PATCH] * Added a list command. --- .../Steffion/BlockHunt/Commands/CMDlist.java | 37 +++++++++++++++++++ .../Steffion/BlockHunt/Managers/CommandC.java | 8 ++++ .../Steffion/BlockHunt/Managers/ConfigC.java | 2 + .../Steffion/BlockHunt/Managers/PlayerM.java | 1 + 4 files changed, 48 insertions(+) create mode 100644 src/nl/Steffion/BlockHunt/Commands/CMDlist.java diff --git a/src/nl/Steffion/BlockHunt/Commands/CMDlist.java b/src/nl/Steffion/BlockHunt/Commands/CMDlist.java new file mode 100644 index 0000000..756b4eb --- /dev/null +++ b/src/nl/Steffion/BlockHunt/Commands/CMDlist.java @@ -0,0 +1,37 @@ +package nl.Steffion.BlockHunt.Commands; + +import nl.Steffion.BlockHunt.Arena; +import nl.Steffion.BlockHunt.W; +import nl.Steffion.BlockHunt.Managers.ConfigC; +import nl.Steffion.BlockHunt.Managers.MessageM; +import nl.Steffion.BlockHunt.Managers.PlayerM; +import nl.Steffion.BlockHunt.Managers.PlayerM.PermsC; + +import org.bukkit.command.Command; +import org.bukkit.entity.Player; + +public class CMDlist extends DefaultCMD { + + @Override + public boolean exectue(Player player, Command cmd, String label, + String[] args) { + if (PlayerM.hasPerm(player, PermsC.list, true)) { + MessageM.sendFMessage(player, ConfigC.chat_headerhigh, false, + "header-" + W.pluginName); + if (W.arenaList.size() >= 1) { + for (Arena arena : W.arenaList) { + MessageM.sendMessage(player, "&7Available arena(s):", false); + MessageM.sendMessage(player, "%A" + arena.arenaName, false); + } + } else { + MessageM.sendMessage(player, "&7&oNo arenas available...", + false); + MessageM.sendMessage(player, + "&7&oCreate an arena first please.", false); + } + MessageM.sendFMessage(player, ConfigC.chat_headerhigh, false, + "header-&oArenas list"); + } + return true; + } +} diff --git a/src/nl/Steffion/BlockHunt/Managers/CommandC.java b/src/nl/Steffion/BlockHunt/Managers/CommandC.java index 94b72ca..4dbb1cf 100644 --- a/src/nl/Steffion/BlockHunt/Managers/CommandC.java +++ b/src/nl/Steffion/BlockHunt/Managers/CommandC.java @@ -58,6 +58,14 @@ public enum CommandC { ConfigC.help_leave, 1, W.pluginName + " "), + LIST ("BlockHunt%list_", + "BlockHunt%li_", + new CMDlist(), + ConfigC.commandEnabled_list, + PermsC.list, + ConfigC.help_list, + 1, + W.pluginName + " "), START ("BlockHunt%start_", "BlockHunt%go_", new CMDstart(), diff --git a/src/nl/Steffion/BlockHunt/Managers/ConfigC.java b/src/nl/Steffion/BlockHunt/Managers/ConfigC.java index 2d35675..b7105a6 100644 --- a/src/nl/Steffion/BlockHunt/Managers/ConfigC.java +++ b/src/nl/Steffion/BlockHunt/Managers/ConfigC.java @@ -20,6 +20,7 @@ public enum ConfigC { commandEnabled_reload (true, W.config), commandEnabled_join (true, W.config), commandEnabled_leave (true, W.config), + commandEnabled_list (true, W.config), commandEnabled_start (true, W.config), commandEnabled_wand (true, W.config), commandEnabled_create (true, W.config), @@ -64,6 +65,7 @@ public enum ConfigC { help_reload ("%NReloads all configs.", W.messages), help_join ("%NJoins a " + W.pluginName + " game.", W.messages), help_leave ("%NLeave a " + W.pluginName + " game.", W.messages), + help_list ("%NShows a list of available arenas.", W.messages), help_start ("%NForces an arena to start.", W.messages), help_wand ("%NGives you the wand selection tool.", W.messages), help_create ("%NCreates an arena from your selection.", W.messages), diff --git a/src/nl/Steffion/BlockHunt/Managers/PlayerM.java b/src/nl/Steffion/BlockHunt/Managers/PlayerM.java index d1bf41e..97363f2 100644 --- a/src/nl/Steffion/BlockHunt/Managers/PlayerM.java +++ b/src/nl/Steffion/BlockHunt/Managers/PlayerM.java @@ -23,6 +23,7 @@ public class PlayerM { joinfull (main + "joinfull", PType.MODERATOR), joinsign (main + "joinsign", PType.PLAYER), leave (main + "leave", PType.PLAYER), + list (main + "list", PType.PLAYER), start (main + "start", PType.MODERATOR), create (main + "create", PType.ADMIN), set (main + "set", PType.MODERATOR),