From 79560fd415912a3c4e5968dea1576dee07f7ca73 Mon Sep 17 00:00:00 2001 From: AlexTheCoder Date: Mon, 8 May 2017 17:24:12 -0400 Subject: [PATCH] Implement Castle Assault into the selection compass and re-add old Castle Siege --- .../mineplex/hub/server/ServerManager.java | 5 ++++ .../hub/server/ui/ServerGameMenu.java | 27 ++++++++++++++----- .../hub/server/ui/button/SelectCAButton.java | 23 ++++++++++++++++ 3 files changed, 48 insertions(+), 7 deletions(-) create mode 100644 Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/button/SelectCAButton.java diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerManager.java b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerManager.java index a305c124b..f72c95a65 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerManager.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerManager.java @@ -787,6 +787,11 @@ public class ServerManager extends MiniPlugin implements BrawlShopProvider { return _statusManager; } + + public ShopBase getCastleAssaultShop() + { + return _serverNpcShopMap.get("Castle Assault"); + } public ShopBase getCastleSiegeShop() { diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerGameMenu.java b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerGameMenu.java index 79d186558..00498e1d3 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerGameMenu.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerGameMenu.java @@ -21,6 +21,7 @@ import mineplex.hub.server.ui.button.SelectBHButton; import mineplex.hub.server.ui.button.SelectBLDButton; import mineplex.hub.server.ui.button.SelectBRButton; import mineplex.hub.server.ui.button.SelectBawkButton; +import mineplex.hub.server.ui.button.SelectCAButton; import mineplex.hub.server.ui.button.SelectCLANSButton; import mineplex.hub.server.ui.button.SelectCSButton; import mineplex.hub.server.ui.button.SelectCTFButton; @@ -63,14 +64,22 @@ public class ServerGameMenu extends ShopPageBase { add(1, Material.EGG, C.cYellowB + "Bawk Bawk Battles " + C.cGray + "Challenges", new String[] { - (_extraValue ? C.cAquaB : C.cWhiteB) + "NEW GAME", C.Reset + "", C.Reset + "Follow Bawk Bawk's instructions", C.Reset + "Complete different tasks", C.Reset + "If you lose, chickens will devour you!" }, "BBB", "Bawk_Bawk_Battles", new SelectBawkButton(this)); + + add(3, Material.DIAMOND_CHESTPLATE, C.cYellowB + "Castle Assault " + C.cGray + "Fast Paced PvP", new String[] + { + (_extraValue ? C.cAquaB : C.cWhiteB) + "NEW GAME", + C.Reset + "", + C.Reset + "Combatants must battle to", + C.Reset + "win the day for their king", + C.Reset + "at all costs!", + }, "CA", "Castle_Assault", new SelectCAButton(this)); - add(4, Material.QUARTZ_BLOCK, C.cYellowB + "Speed Builders " + C.cGray + "Competitive Building", new String[] + add(5, Material.QUARTZ_BLOCK, C.cYellowB + "Speed Builders " + C.cGray + "Competitive Building", new String[] { C.Reset + "", C.Reset + "Memorize Gwen the Guardian's builds", @@ -154,13 +163,12 @@ public class ServerGameMenu extends ShopPageBase C.Reset + "last man standing.", }, "TDM", "Team_Deathmatch", new SelectTDMButton(this)); - add(24, Material.DIAMOND_CHESTPLATE, C.cYellowB + "Castle Siege " + C.cGray + "Fast-Paced PvP", new String[] + add(24, Material.DIAMOND_CHESTPLATE, C.cYellowB + "Castle Siege " + C.cGray + "Team Game", new String[] { - (_extraValue ? C.cAquaB : C.cWhiteB) + "MAJOR UPDATE/REWRITE", C.Reset + "", - C.Reset + "Combatants must battle to", - C.Reset + "win the day for their king", - C.Reset + "at all costs!", + C.Reset + "Defenders must protect King Sparklez", + C.Reset + "from the endless waves of Undead", + C.Reset + "until the sun rises!", }, "CS", "Castle_Siege", new SelectCSButton(this)); add(26, Material.GRASS, C.cYellowB + "Block Hunt " + C.cGray + "Cat and Mouse", new String[] @@ -632,6 +640,11 @@ public class ServerGameMenu extends ShopPageBase { getPlugin().getCtfShop().attemptShopOpen(player); } + + public void openCA(Player player) + { + getPlugin().getCastleAssaultShop().attemptShopOpen(player); + } public void openCS(Player player) { diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/button/SelectCAButton.java b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/button/SelectCAButton.java new file mode 100644 index 000000000..6ab3a36c8 --- /dev/null +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/button/SelectCAButton.java @@ -0,0 +1,23 @@ +package mineplex.hub.server.ui.button; + +import org.bukkit.entity.Player; +import org.bukkit.event.inventory.ClickType; + +import mineplex.core.shop.item.IButton; +import mineplex.hub.server.ui.ServerGameMenu; + +public class SelectCAButton implements IButton +{ + private ServerGameMenu _menu; + + public SelectCAButton(ServerGameMenu menu) + { + _menu = menu; + } + + @Override + public void onClick(Player player, ClickType clickType) + { + _menu.openCA(player); + } +}