mirror of
https://github.com/nkomarn/harbor.git
synced 2024-11-21 17:35:40 +01:00
Fix #70
This fixes the thunderstorm looping bug by forcing players out of bed immediately and only removing the world from the skipping queue after 20 ticks.
This commit is contained in:
parent
130953b216
commit
ce28be83ad
@ -3,6 +3,7 @@ package xyz.nkomarn.harbor.task;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Statistic;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import xyz.nkomarn.harbor.Harbor;
|
||||
@ -53,9 +54,15 @@ public class AccelerateNightTask extends BukkitRunnable {
|
||||
world.getPlayers().forEach(player -> player.setStatistic(Statistic.TIME_SINCE_REST, 0));
|
||||
}
|
||||
|
||||
checker.resetStatus(world);
|
||||
harbor.getPlayerManager().clearCooldowns();
|
||||
harbor.getMessages().sendRandomChatMessage(world, "messages.chat.night-skipped");
|
||||
world.getPlayers().stream()
|
||||
.filter(LivingEntity::isSleeping)
|
||||
.forEach(player -> player.wakeup(true));
|
||||
|
||||
harbor.getServer().getScheduler().runTaskLater(harbor, () -> {
|
||||
checker.resetStatus(world);
|
||||
harbor.getPlayerManager().clearCooldowns();
|
||||
harbor.getMessages().sendRandomChatMessage(world, "messages.chat.night-skipped");
|
||||
}, 20L);
|
||||
cancel();
|
||||
return;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user