Skip to content
This repository was archived by the owner on Dec 8, 2024. It is now read-only.

Commit 13e00be

Browse files
committed
fix(skip-night): manage properly the sleeping count and needed to skip the night
1 parent 40e8813 commit 13e00be

File tree

1 file changed

+6
-13
lines changed

1 file changed

+6
-13
lines changed

plugin/src/main/java/team/devblook/pepitocore/plugin/module/sleep/listener/SkipSleepListener.java

+6-13
Original file line numberDiff line numberDiff line change
@@ -16,38 +16,31 @@ public class SkipSleepListener implements Listener {
1616

1717
@EventHandler
1818
public void onEnterBed(PlayerBedEnterEvent event) {
19-
if (event.isCancelled() || event.getBedEnterResult() != PlayerBedEnterEvent.BedEnterResult.OK) {
19+
if (event.getBedEnterResult() != PlayerBedEnterEvent.BedEnterResult.OK) {
2020
return;
2121
}
2222

2323
int sleeping = SLEEPING.incrementAndGet();
24+
int needed = needed();
2425

25-
if (sleeping >= needed()) {
26+
if (sleeping >= needed) {
2627
World world = event.getBed().getWorld();
27-
2828
world.setTime(1000);
29-
world.setThundering(false);
30-
world.setStorm(false);
3129

3230
broadcast("Night skipped!");
3331
return;
3432
}
3533

36-
broadcast("Sleeping (" + sleeping + "/" + needed() + ").");
34+
broadcast("Sleeping (" + sleeping + "/" + needed + ").");
3735
}
3836

3937
@EventHandler
4038
public void onLeaveBed(PlayerBedLeaveEvent event) {
41-
long time = event.getBed().getWorld().getTime();
42-
if (time < 12300 || time > 23850) {
43-
return;
44-
}
45-
46-
broadcast("Sleeping (" + SLEEPING.decrementAndGet() + "/" + needed() + ").");
39+
broadcast("Sleeping (" + SLEEPING.decrementAndGet() + "/" + needed() + ").");
4740
}
4841

4942
private int needed() {
50-
return (int) (0.5 * Bukkit.getOnlinePlayers().size());
43+
return (int) Math.ceil(0.5 * Bukkit.getOnlinePlayers().size());
5144
}
5245

5346
private void broadcast(String message) {

0 commit comments

Comments
 (0)