From 8ea23f96fce2e083cc681265cabd70f38adf27e1 Mon Sep 17 00:00:00 2001 From: Aaron Brock Date: Sat, 20 Jun 2015 01:36:05 -0400 Subject: [PATCH] Froze time using doDayNightCycle instead of setting the time on UpdateEvent. Signed-off-by: Aaron Brock --- .../arcade/managers/GameLobbyManager.java | 25 +++++++++++++++---- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameLobbyManager.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameLobbyManager.java index e70531e48..89bf6ada6 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameLobbyManager.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameLobbyManager.java @@ -32,6 +32,7 @@ import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.inventory.InventoryType; import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerVelocityEvent; +import org.bukkit.event.weather.WeatherChangeEvent; import org.bukkit.scoreboard.DisplaySlot; import org.bukkit.scoreboard.Objective; import org.bukkit.scoreboard.Scoreboard; @@ -121,7 +122,12 @@ public class GameLobbyManager implements Listener, IPacketHandler packetHandler.addPacketHandler(this); World world = UtilWorld.getWorld("world"); - + + world.setTime(6000); + world.setStorm(false); + world.setThundering(false); + world.setGameRuleValue("doDaylightCycle", "false"); + spawn = new Location(world, 0, 104, 0); _gameText = new Location(world, 0, 130, 50); @@ -752,9 +758,9 @@ public class GameLobbyManager implements Listener, IPacketHandler { if (event.getType() == UpdateType.FAST) { - spawn.getWorld().setTime(6000); - spawn.getWorld().setStorm(false); - spawn.getWorld().setThundering(false); + //spawn.getWorld().setTime(6000); + //spawn.getWorld().setStorm(false); + //spawn.getWorld().setThundering(false); } @@ -770,7 +776,16 @@ public class GameLobbyManager implements Listener, IPacketHandler ScoreboardDisplay(event); ScoreboardSet(event); } - + + @EventHandler + public void onWeather(WeatherChangeEvent event) { + + if (!event.getWorld().equals(spawn.getWorld())) + return; + + event.setCancelled(true); + } + @EventHandler private void RemoveInvalidEnts(GameStateChangeEvent event) {