Package net.minecraft.server.world
Class SleepManager
java.lang.Object
net.minecraft.server.world.SleepManager
A sleep manager allows easy tracking of whether nights should be skipped
on a server world.
- Mappings:
Namespace Name official afv
intermediary net/minecraft/class_5838
named net/minecraft/server/world/SleepManager
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
canResetTime
(int percentage, List<ServerPlayerEntity> players) Returns if the night can actually be skipped at the tick this is called.boolean
canSkipNight
(int percentage) Returns if the number of sleeping players has reached apercentage
out of all players.void
Resets the number of sleeping players to 0.int
getNightSkippingRequirement
(int percentage) Returns the number of sleepers needed to skip a night with the givenpercentage
.int
Returns the number of sleeping players.boolean
update
(List<ServerPlayerEntity> players) Updates the sleeping player and total player counts.
-
Field Details
-
total
private int totalThe total number of players in a server world.- Mappings:
Namespace Name Mixin selector official a
Lafv;a:I
intermediary field_28866
Lnet/minecraft/class_5838;field_28866:I
named total
Lnet/minecraft/server/world/SleepManager;total:I
-
sleeping
private int sleepingThe number of players sleeping in a server world.- Mappings:
Namespace Name Mixin selector official b
Lafv;b:I
intermediary field_28867
Lnet/minecraft/class_5838;field_28867:I
named sleeping
Lnet/minecraft/server/world/SleepManager;sleeping:I
-
-
Constructor Details
-
SleepManager
public SleepManager()
-
-
Method Details
-
canSkipNight
public boolean canSkipNight(int percentage) Returns if the number of sleeping players has reached apercentage
out of all players.This allows initiating the night sleeping process, but still needs players to have slept long enough (checked in canResetTime) to actually skip the night.
- Parameters:
percentage
- the percentage of players required, as obtained from the game rule- Mappings:
Namespace Name Mixin selector official a
Lafv;a(I)Z
intermediary method_33812
Lnet/minecraft/class_5838;method_33812(I)Z
named canSkipNight
Lnet/minecraft/server/world/SleepManager;canSkipNight(I)Z
-
canResetTime
Returns if the night can actually be skipped at the tick this is called.This is usually tested after canSkipNight, which is less performance intensive to check.
- Parameters:
percentage
- the percentage of players required, as obtained from the game ruleplayers
- the list of all players in a world where the night would be skipped- Mappings:
Namespace Name Mixin selector official a
Lafv;a(ILjava/util/List;)Z
intermediary method_33813
Lnet/minecraft/class_5838;method_33813(ILjava/util/List;)Z
named canResetTime
Lnet/minecraft/server/world/SleepManager;canResetTime(ILjava/util/List;)Z
-
getNightSkippingRequirement
public int getNightSkippingRequirement(int percentage) Returns the number of sleepers needed to skip a night with the givenpercentage
.- Parameters:
percentage
- the percentage of players required, as obtained from the game rule- Mappings:
Namespace Name Mixin selector official b
Lafv;b(I)I
intermediary method_33816
Lnet/minecraft/class_5838;method_33816(I)I
named getNightSkippingRequirement
Lnet/minecraft/server/world/SleepManager;getNightSkippingRequirement(I)I
-
clearSleeping
public void clearSleeping()Resets the number of sleeping players to 0.- Mappings:
Namespace Name Mixin selector official a
Lafv;a()V
intermediary method_33811
Lnet/minecraft/class_5838;method_33811()V
named clearSleeping
Lnet/minecraft/server/world/SleepManager;clearSleeping()V
-
getSleeping
public int getSleeping()Returns the number of sleeping players.- Mappings:
Namespace Name Mixin selector official b
Lafv;b()I
intermediary method_33815
Lnet/minecraft/class_5838;method_33815()I
named getSleeping
Lnet/minecraft/server/world/SleepManager;getSleeping()I
-
update
Updates the sleeping player and total player counts.- Parameters:
players
- the list of all players in a server world- Returns:
true
if the sleeping players or total players have changed- Mappings:
Namespace Name Mixin selector official a
Lafv;a(Ljava/util/List;)Z
intermediary method_33814
Lnet/minecraft/class_5838;method_33814(Ljava/util/List;)Z
named update
Lnet/minecraft/server/world/SleepManager;update(Ljava/util/List;)Z
-