From 20a7b09eac111283e794d16223626bfbfc152252 Mon Sep 17 00:00:00 2001 From: Minenash Date: Tue, 8 Jan 2019 18:32:42 -0500 Subject: [PATCH] The Majority Sleep feature is now restricted to worlds whom opt-in --- .../redstoner/modules/survival/Survival.java | 27 ++++++++++++++----- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/redstoner/modules/survival/Survival.java b/src/main/java/com/redstoner/modules/survival/Survival.java index f3999a4..41855e1 100644 --- a/src/main/java/com/redstoner/modules/survival/Survival.java +++ b/src/main/java/com/redstoner/modules/survival/Survival.java @@ -23,7 +23,7 @@ import net.nemez.chatapi.ChatAPI; @Commands(CommandHolderType.File) @AutoRegisterListener -@Version(major = 5, minor = 0, revision = 1, compatible = 4) +@Version(major = 5, minor = 0, revision = 2, compatible = 4) public class Survival implements Module, Listener { @EventHandler @@ -47,33 +47,45 @@ public class Survival implements Module, Listener { if (suspendEvents || !canSleep(world.getTime(), world.isThundering()) || world.getPlayers().size() == 0) return; + System.out.println("A"); + + if (!((String)DataManager.getConfigOrDefault(world.getName() + ".enabled", "true")).equals("true")) + return; + System.out.println("B"); int sleepingPlayers = 0; int totalPlayers = 0; - + System.out.println("C"); for (Player p : world.getPlayers()) if (p.isSleeping()) sleepingPlayers++; - + System.out.println("D"); for (Player p : world.getPlayers()) if (p.getGameMode() == GameMode.SURVIVAL) totalPlayers++; - + System.out.println("E"); if (totalPlayers == 0) return; - + System.out.println("F"); int perSleeping = 100 * sleepingPlayers / totalPlayers; - int perNeeded = (Integer) DataManager.getConfigOrDefault("perNeededToSleep", 51); + int perNeeded = (Integer) DataManager.getConfigOrDefault(world.getName() + ".perNeededToSleep", 51); + + System.out.println("1"); if (perSleeping >= perNeeded) { + System.out.println("2"); notifyPlayers(world.getPlayers(), "&e" + perSleeping + "%&0 were sleeping. The &6sun&0 is rising!"); + System.out.println("3"); world.setTime(23450); world.setStorm(false); world.setThundering(false); suspendEvents = true; Bukkit.getScheduler().scheduleSyncDelayedTask(Main.plugin, () -> resumeEvents(), 20); + System.out.println("4"); } - else + else { + System.out.println("5"); notifyPlayers(world.getPlayers(), "&e" + perSleeping + "%&0 are sleeping. &e" + perNeeded + "%&0 needed"); + } } @@ -87,6 +99,7 @@ public class Survival implements Module, Listener { } public void notifyPlayers(List players, String msg) { + System.out.println("I made It!"); for (Player p : players) ChatAPI.sendActionBar(p, "&0[&2Sleep&0] " + msg); }