diff --git a/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_11_4.xml b/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_11_4.xml
deleted file mode 100644
index d60deb07..00000000
--- a/.idea/libraries/Maven__com_google_protobuf_protobuf_java_3_11_4.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/libraries/Maven__com_mineplex_spigot_1_8_8_1_9_SNAPSHOT.xml b/.idea/libraries/Maven__com_mineplex_spigot_1_8_8_1_9_SNAPSHOT.xml
index 24f745b9..b03149c6 100644
--- a/.idea/libraries/Maven__com_mineplex_spigot_1_8_8_1_9_SNAPSHOT.xml
+++ b/.idea/libraries/Maven__com_mineplex_spigot_1_8_8_1_9_SNAPSHOT.xml
@@ -8,7 +8,6 @@
-
\ No newline at end of file
diff --git a/.idea/libraries/Maven__commons_codec_commons_codec_1_62.xml b/.idea/libraries/Maven__commons_codec_commons_codec_1_62.xml
deleted file mode 100644
index e8a6a9f9..00000000
--- a/.idea/libraries/Maven__commons_codec_commons_codec_1_62.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml
index c5361116..1618a240 100644
--- a/.idea/sqldialects.xml
+++ b/.idea/sqldialects.xml
@@ -1,10 +1,5 @@
-
-
-
-
-
diff --git a/Mineplex.Core/target/classes/META-INF/mineplex-core.kotlin_module b/Mineplex.Core/target/classes/META-INF/mineplex-core.kotlin_module
deleted file mode 100644
index c42baff3..00000000
Binary files a/Mineplex.Core/target/classes/META-INF/mineplex-core.kotlin_module and /dev/null differ
diff --git a/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportCategoryButton$1.class b/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportCategoryButton$1.class
index 567323ff..c452b7aa 100644
Binary files a/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportCategoryButton$1.class and b/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportCategoryButton$1.class differ
diff --git a/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportResultButton$1.class b/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportResultButton$1.class
index 65c011e5..4f580c79 100644
Binary files a/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportResultButton$1.class and b/Mineplex.Core/target/classes/mineplex/core/report/ui/ReportResultButton$1.class differ
diff --git a/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/Beta.java b/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/Beta.java
new file mode 100644
index 00000000..0bfff15f
--- /dev/null
+++ b/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/Beta.java
@@ -0,0 +1,7 @@
+package nautilus.game.arcade.game.games;
+
+public class Beta {
+
+ public static boolean enableBeta;
+
+}
diff --git a/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.java b/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.java
index 0bf37903..8387a1f3 100644
--- a/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.java
+++ b/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.java
@@ -7,6 +7,7 @@ import mineplex.core.updater.event.UpdateEvent;
import mineplex.minecraft.game.core.damage.CustomDamageEvent;
import nautilus.game.arcade.events.GameStateChangeEvent;
import nautilus.game.arcade.game.Game.GameState;
+import nautilus.game.arcade.game.games.Beta;
import org.bukkit.*;
import org.bukkit.block.Block;
import org.bukkit.entity.LivingEntity;
@@ -160,10 +161,19 @@ public class CastleSiegeKing implements Listener {
_damagers.put(damager, _damagers.get(damager) + 1);
_lastDamager = damager;
- _entity.playEffect(EntityEffect.HURT);
+ if (Beta.enableBeta){
+
+ _entity.getWorld().playEffect(_entity.getLocation().add(0, 0.5, 0), Effect.STEP_SOUND, Material.REDSTONE_BLOCK);
+ _entity.getWorld().playSound(_entity.getLocation().add(0, 0.5, 0), Sound.WITHER_HURT,10,1);
+ _entity.setHealth(_entity.getHealth() - 1);
+ }
+ else {
_entity.getWorld().playEffect(_entity.getLocation().add(0, 0.5, 0), Effect.STEP_SOUND, Material.REDSTONE_BLOCK);
- _entity.getWorld().playSound(_entity.getLocation().add(0, 0.5, 0), Sound.WITHER_HURT,10,1);
+ _entity.getWorld().playSound(_entity.getLocation().add(0, 0.5, 0), Sound.ZOMBIE_HURT,10,1);
_entity.setHealth(_entity.getHealth() - 1);
+ }
+
+ _entity.playEffect(EntityEffect.HURT);
}
@EventHandler
diff --git a/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.java b/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.java
index 9453ff66..bd380e64 100644
--- a/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.java
+++ b/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.java
@@ -17,6 +17,7 @@ import nautilus.game.arcade.events.PlayerGameRespawnEvent;
import nautilus.game.arcade.game.Game;
import nautilus.game.arcade.game.GameTeam;
import nautilus.game.arcade.game.TeamGame;
+import nautilus.game.arcade.game.games.Beta;
import nautilus.game.arcade.game.games.castlesiegenew.kits.*;
import nautilus.game.arcade.game.modules.SpawnShieldModule;
import nautilus.game.arcade.game.modules.compass.CompassModule;
@@ -58,11 +59,6 @@ public class CastleSiegeNew extends TeamGame
{
// Game Help
-// private int _helpIndex = 0;
-// private ChatColor _helpColor;
-// public ChatColor _colorPrimary;
-// public ChatColor _colorSecondary;
-// protected String[] _help;
private int _undeadIndex = 0;
private int _defenderIndex = 0;
private int _generalIndex = 0;
@@ -124,7 +120,7 @@ public class CastleSiegeNew extends TeamGame
"Coordination and teamwork are important to winning as Defenders."
};
- // Defender Tips - Colored yellow
+ // General Tips - Colored yellow
private static final String[] GeneralTips = {
"Use 1.8.9 for the best gameplay experience!",
"Castle Siege is a challenging game! Work together to succeed.",
@@ -262,84 +258,89 @@ public class CastleSiegeNew extends TeamGame
@EventHandler
public void DisplayCSTips(UpdateEvent event)
{
-
- if (showDefTip && !showGenTips) {
- if (!inLobby() || event.getType() != UpdateType.SLOWER) {
- return;
- }
-
- if (Manager.GetGameHostManager().isCommunityServer()) {
- return;
- }
-
- defenderTipColor = defenderTipColor == ChatColor.AQUA ? ChatColor.AQUA : ChatColor.AQUA;
- String und = C.cWhiteB + "TIP> " + ChatColor.RESET + defenderTipColor + DefenderTips[_defenderIndex];
-
- for (Player player : UtilServer.getPlayersCollection()) {
-
- if (!Manager.getPreferences().get(player).isActive(Preference.GAME_TIPS)) {
- continue;
+ if (Beta.enableBeta) {
+ if (showDefTip && !showGenTips) {
+ if (!inLobby() || event.getType() != UpdateType.SLOWER) {
+ return;
}
- player.playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 1f, 1f);
- UtilPlayer.message(player, und);
+ if (Manager.GetGameHostManager().isCommunityServer()) {
+ return;
+ }
+
+ defenderTipColor = defenderTipColor == ChatColor.AQUA ? ChatColor.AQUA : ChatColor.AQUA;
+ String und = C.cWhiteB + "TIP> " + ChatColor.RESET + defenderTipColor + DefenderTips[_defenderIndex];
+
+ for (Player player : UtilServer.getPlayersCollection()) {
+
+ if (!Manager.getPreferences().get(player).isActive(Preference.GAME_TIPS)) {
+ continue;
+ }
+
+ player.playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 1f, 1f);
+ UtilPlayer.message(player, und);
+ }
+
+ _defenderIndex = (_defenderIndex + 1) % DefenderTips.length;
+ showDefTip = false;
}
- _defenderIndex = (_defenderIndex + 1) % DefenderTips.length;
- showDefTip = false;
+ else if (!showDefTip && !showGenTips) {
+ if (!inLobby() || event.getType() != UpdateType.SLOWER) {
+ return;
+ }
+
+ if (Manager.GetGameHostManager().isCommunityServer()) {
+ return;
+ }
+
+ undeadTipColor = undeadTipColor == ChatColor.RED ? ChatColor.RED : ChatColor.RED;
+ String def = C.cWhiteB + "TIP> " + ChatColor.RESET + undeadTipColor + UndeadTips[_undeadIndex];
+
+ for (Player player : UtilServer.getPlayersCollection()) {
+ if (!Manager.getPreferences().get(player).isActive(Preference.GAME_TIPS)) {
+ continue;
+ }
+
+ player.playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 1f, 1f);
+ UtilPlayer.message(player, def);
+
+ }
+
+ _undeadIndex = (_undeadIndex + 1) % UndeadTips.length;
+ showGenTips = true;
+ }
+
+ else {
+ if (!inLobby() || event.getType() != UpdateType.SLOWER) {
+ return;
+ }
+
+ if (Manager.GetGameHostManager().isCommunityServer()) {
+ return;
+ }
+
+ generalTipColor = generalTipColor == ChatColor.YELLOW ? ChatColor.YELLOW : ChatColor.YELLOW;
+ String gen = C.cWhiteB + "TIP> " + ChatColor.RESET + generalTipColor + GeneralTips[_generalIndex];
+
+ for (Player player : UtilServer.getPlayersCollection()) {
+ if (!Manager.getPreferences().get(player).isActive(Preference.GAME_TIPS)) {
+ continue;
+ }
+
+ player.playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 1f, 1f);
+ UtilPlayer.message(player, gen);
+
+ }
+
+ _generalIndex = (_generalIndex + 1) % GeneralTips.length;
+ showGenTips = false;
+ showDefTip = true;
+ }
+ _help = null;
}
-
- else if (!showDefTip && !showGenTips) {
- if (!inLobby() || event.getType() != UpdateType.SLOWER) {
- return;
- }
-
- if (Manager.GetGameHostManager().isCommunityServer()) {
- return;
- }
-
- undeadTipColor = undeadTipColor == ChatColor.RED ? ChatColor.RED : ChatColor.RED;
- String def = C.cWhiteB + "TIP> " + ChatColor.RESET + undeadTipColor + UndeadTips[_undeadIndex];
-
- for (Player player : UtilServer.getPlayersCollection()) {
- if (!Manager.getPreferences().get(player).isActive(Preference.GAME_TIPS)) {
- continue;
- }
-
- player.playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 1f, 1f);
- UtilPlayer.message(player, def);
-
- }
-
- _undeadIndex = (_undeadIndex + 1) % UndeadTips.length;
- showGenTips = true;
- }
-
- else {
- if (!inLobby() || event.getType() != UpdateType.SLOWER) {
- return;
- }
-
- if (Manager.GetGameHostManager().isCommunityServer()) {
- return;
- }
-
- generalTipColor = generalTipColor == ChatColor.YELLOW ? ChatColor.YELLOW : ChatColor.YELLOW;
- String gen = C.cWhiteB + "TIP> " + ChatColor.RESET + generalTipColor + GeneralTips[_generalIndex];
-
- for (Player player : UtilServer.getPlayersCollection()) {
- if (!Manager.getPreferences().get(player).isActive(Preference.GAME_TIPS)) {
- continue;
- }
-
- player.playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 1f, 1f);
- UtilPlayer.message(player, gen);
-
- }
-
- _generalIndex = (_generalIndex + 1) % GeneralTips.length;
- showGenTips = false;
- showDefTip = true;
+ else{
+ _help = TIPS;
}
}
diff --git a/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/button/BetaButton.java b/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/button/BetaButton.java
new file mode 100644
index 00000000..a5522bf0
--- /dev/null
+++ b/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/button/BetaButton.java
@@ -0,0 +1,52 @@
+package nautilus.game.arcade.gui.privateServer.button;
+
+import mineplex.core.common.util.C;
+import mineplex.core.common.util.UtilPlayer;
+import mineplex.core.common.util.UtilServer;
+import mineplex.core.shop.item.IButton;
+import nautilus.game.arcade.ArcadeManager;
+import nautilus.game.arcade.game.games.Beta;
+import nautilus.game.arcade.gui.privateServer.PrivateServerShop;
+import nautilus.game.arcade.gui.privateServer.page.GameVotingPage;
+import org.bukkit.Sound;
+import org.bukkit.entity.Player;
+import org.bukkit.event.inventory.ClickType;
+
+public class BetaButton implements IButton {
+
+ private ArcadeManager _arcadeManager;
+ private PrivateServerShop _shop;
+
+ public BetaButton(ArcadeManager arcadeManager, PrivateServerShop shop)
+ {
+ _shop = shop;
+ _arcadeManager = arcadeManager;
+ }
+
+ public void Announce(String message, boolean playSound)
+ {
+ for (Player player : UtilServer.getPlayers())
+ {
+ if (playSound)
+ player.playSound(player.getLocation(), Sound.NOTE_PLING, 1f, 1f);
+
+ UtilPlayer.message(player, message);
+ }
+
+ System.out.println("[Announcement] " + message);
+ }
+
+ @Override
+ public void onClick(Player player, ClickType clickType)
+ {
+ player.closeInventory();
+ if (Beta.enableBeta) {
+ Beta.enableBeta = false;
+ Announce(C.cAquaB + "Disabled BETA Features.", true);
+ return;
+ }
+ Beta.enableBeta = true;
+ Announce(C.cAquaB + "Enabled BETA Features. Caution: Highly Experimental!", true);
+ }
+
+}
diff --git a/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/page/MenuPage.java b/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/page/MenuPage.java
index 1d3c5c21..30f932b7 100644
--- a/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/page/MenuPage.java
+++ b/Nautilus.Game.Arcade/src/nautilus/game/arcade/gui/privateServer/page/MenuPage.java
@@ -3,6 +3,7 @@ package nautilus.game.arcade.gui.privateServer.page;
import java.util.ArrayList;
import java.util.List;
+import nautilus.game.arcade.gui.privateServer.button.*;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
@@ -16,19 +17,6 @@ import mineplex.core.shop.item.ShopItem;
import nautilus.game.arcade.ArcadeManager;
import nautilus.game.arcade.gui.privateServer.PrivateServerShop;
-import nautilus.game.arcade.gui.privateServer.button.BanButton;
-import nautilus.game.arcade.gui.privateServer.button.EditRotationButton;
-import nautilus.game.arcade.gui.privateServer.button.GameVotingButton;
-import nautilus.game.arcade.gui.privateServer.button.GiveAdminButton;
-import nautilus.game.arcade.gui.privateServer.button.KillButton;
-import nautilus.game.arcade.gui.privateServer.button.OptionsButton;
-import nautilus.game.arcade.gui.privateServer.button.PlayerHeadButton;
-import nautilus.game.arcade.gui.privateServer.button.RemoveAdminButton;
-import nautilus.game.arcade.gui.privateServer.button.SetGameButton;
-import nautilus.game.arcade.gui.privateServer.button.StartGameButton;
-import nautilus.game.arcade.gui.privateServer.button.StopGameButton;
-import nautilus.game.arcade.gui.privateServer.button.UnbanButton;
-import nautilus.game.arcade.gui.privateServer.button.WhitelistButton;
public class MenuPage extends BasePage
{
@@ -54,13 +42,14 @@ public class MenuPage extends BasePage
int stopSlot = host ? 18 : 1 + 18;
int banSlot = host ? 6 + 9 : 7 + 9;
int setGameSlot = host ? 2 + 9 : 3 + 9;
+ int enableBetaSlot = host ? 27 + 1 : 27 + 2;
String[] lore = disableChangeButtons ? new String[]{ChatColor.RESET + C.cRed + "Game in Progress. Please Wait"} : new String[]{};
ShopItem startItem = new ShopItem(Material.EMERALD_BLOCK, "Start Game", lore, 1, false);
ShopItem stopItem = new ShopItem(Material.REDSTONE_BLOCK, "Stop Game", lore, 1, false);
ShopItem banItem = new ShopItem(Material.LAVA_BUCKET, "Remove Player", lore, 1, false);
ShopItem setGameItem = new ShopItem(Material.BOOK_AND_QUILL, "Set Game", lore, 1, false);
-
+ ShopItem enableBetaItem = new ShopItem(Material.BARRIER, "Enable/Disable Beta Features", lore, 1, false);
if (disableChangeButtons)
{
@@ -68,6 +57,7 @@ public class MenuPage extends BasePage
addItem(stopSlot, stopItem);
addItem(banSlot, banItem);
addItem(setGameSlot, setGameItem);
+ addItem(enableBetaSlot, enableBetaItem);
}
else
{
@@ -82,6 +72,9 @@ public class MenuPage extends BasePage
SetGameButton setGameButton = new SetGameButton(getPlugin(), getShop());
addButton(setGameSlot, setGameItem, setGameButton);
+
+ BetaButton betaButton = new BetaButton(getPlugin(), getShop());
+ addButton(enableBetaSlot, enableBetaItem, betaButton);
}
}
diff --git a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/Beta.class b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/Beta.class
new file mode 100644
index 00000000..7df0abb8
Binary files /dev/null and b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/Beta.class differ
diff --git a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.class b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.class
index 30e6fa96..228db9a4 100644
Binary files a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.class and b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeKing.class differ
diff --git a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.class b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.class
index 535d68bf..287ba81e 100644
Binary files a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.class and b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/games/castlesiegenew/CastleSiegeNew.class differ
diff --git a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/team/TeamRequestsModule$1.class b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/team/TeamRequestsModule$1.class
index 4ba8d766..298d8861 100644
Binary files a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/team/TeamRequestsModule$1.class and b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/game/team/TeamRequestsModule$1.class differ
diff --git a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/button/BetaButton.class b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/button/BetaButton.class
new file mode 100644
index 00000000..0c715fe4
Binary files /dev/null and b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/button/BetaButton.class differ
diff --git a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/page/MenuPage.class b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/page/MenuPage.class
index c38dd434..df0a921f 100644
Binary files a/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/page/MenuPage.class and b/Nautilus.Game.Arcade/target/classes/nautilus/game/arcade/gui/privateServer/page/MenuPage.class differ
diff --git a/out/artifacts/nautilus_game_arcade_jar/nautilus-game-arcade.jar b/out/artifacts/nautilus_game_arcade_jar/nautilus-game-arcade.jar
index 8f9fb537..6c06059a 100644
Binary files a/out/artifacts/nautilus_game_arcade_jar/nautilus-game-arcade.jar and b/out/artifacts/nautilus_game_arcade_jar/nautilus-game-arcade.jar differ