From cfcfad610f5fcee433c2b4e26e194d47d5b79f48 Mon Sep 17 00:00:00 2001 From: Chiss Date: Sat, 25 Oct 2014 13:56:23 +1100 Subject: [PATCH] Improved recruit/prepare countdown timers --- .../core/common/util/UtilTextTop.java | 1 + .../game/arcade/managers/GameManager.java | 34 +++++++++++++------ 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/Plugins/Mineplex.Core.Common/src/mineplex/core/common/util/UtilTextTop.java b/Plugins/Mineplex.Core.Common/src/mineplex/core/common/util/UtilTextTop.java index ae3ef09ba..74a8fbf1c 100644 --- a/Plugins/Mineplex.Core.Common/src/mineplex/core/common/util/UtilTextTop.java +++ b/Plugins/Mineplex.Core.Common/src/mineplex/core/common/util/UtilTextTop.java @@ -37,6 +37,7 @@ public class UtilTextTop { deleteOld(player); + healthPercent = Math.min(1, healthPercent); boolean halfHealth = UtilPlayer.is1_8(player); //Display Dragon diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameManager.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameManager.java index 1039e039b..6266b386f 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameManager.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameManager.java @@ -10,6 +10,7 @@ import mineplex.core.common.util.UtilFirework; import mineplex.core.common.util.UtilInv; import mineplex.core.common.util.UtilPlayer; import mineplex.core.common.util.UtilServer; +import mineplex.core.common.util.UtilTextBottom; import mineplex.core.common.util.UtilTextTop; import mineplex.core.common.util.UtilTime; import mineplex.minecraft.game.core.condition.Condition.ConditionType; @@ -62,7 +63,7 @@ public class GameManager implements Listener if (event.getType() != UpdateType.FASTER) return; - if (Manager.GetGame() != null && Manager.GetGame().GetState() != GameState.Live) + if (Manager.GetGame() != null && !Manager.GetGame().InProgress()) { ChatColor col = ChatColor.RED; if (_colorId == 1) col = ChatColor.YELLOW; @@ -73,19 +74,16 @@ public class GameManager implements Listener String text = col + C.Bold + "US.MINEPLEX.COM EU.MINEPLEX.COM"; double health = 1; - if (Manager.GetGame().GetState() == GameState.Prepare) + if (Manager.GetGame().GetState() == GameState.Recruit) { - health = (9 - (System.currentTimeMillis() - Manager.GetGame().GetStateTime())/1000d) / 9d; + if (Manager.GetGame().GetCountdown() >= 0 && Manager.GetGame().GetCountdown() <= 10) + health = 1 - Manager.GetGame().GetCountdown() / 10d; } - else if (Manager.GetGame().GetState() == GameState.Recruit) - { - if (Manager.GetGame().GetCountdown() >= 0) - health = Manager.GetGame().GetCountdown() / 60d; - } - + //Display IP - UtilTextTop.display(text, UtilServer.getPlayers()); + UtilTextTop.displayProgress(text, health, UtilServer.getPlayers()); + //Name Dragons Appropriately for (Mount mount : Manager.getCosmeticManager().getMountManager().getMounts()) { if (mount instanceof MountDragon) @@ -96,6 +94,22 @@ public class GameManager implements Listener } } } + + @EventHandler + public void DisplayPrepareTime(UpdateEvent event) + { + if (event.getType() != UpdateType.TICK) + return; + + if (Manager.GetGame() == null || Manager.GetGame().GetState() != GameState.Prepare) + return; + + double health = (9 - (System.currentTimeMillis() - Manager.GetGame().GetStateTime())/1000d) / 9d; + + for (Player player : UtilServer.getPlayers()) + UtilTextBottom.displayProgress("Game Start", 1-health, + UtilTime.MakeStr(Math.max(0, 9000 - (System.currentTimeMillis() - Manager.GetGame().GetStateTime()))), player); + } @EventHandler public void StateUpdate(UpdateEvent event)