Package dev.deepcore.challenge.session
Class PausedRunStateService
java.lang.Object
dev.deepcore.challenge.session.PausedRunStateService
Captures and restores player run state when pausing to lobby.
-
Constructor Summary
ConstructorsConstructorDescriptionPausedRunStateService(double defaultMaxHealth) Creates a paused-run state service. -
Method Summary
Modifier and TypeMethodDescriptionvoidapplySnapshotIfPresent(org.bukkit.entity.Player player) Applies a previously captured snapshot to the player when available.voidClears all stored paused-run player snapshots.voidstashRunStateForLobby(org.bukkit.entity.Player player, boolean teleportToLobby, Supplier<org.bukkit.Location> lobbySpawnSupplier) Captures a player's current run state and optionally teleports to lobby.
-
Constructor Details
-
PausedRunStateService
public PausedRunStateService(double defaultMaxHealth) Creates a paused-run state service.- Parameters:
defaultMaxHealth- default max-health baseline used for snapshot restore
-
-
Method Details
-
clearSnapshots
public void clearSnapshots()Clears all stored paused-run player snapshots. -
stashRunStateForLobby
public void stashRunStateForLobby(org.bukkit.entity.Player player, boolean teleportToLobby, Supplier<org.bukkit.Location> lobbySpawnSupplier) Captures a player's current run state and optionally teleports to lobby.- Parameters:
player- player whose state should be capturedteleportToLobby- true to teleport player to lobby after snapshotlobbySpawnSupplier- supplier for lobby spawn location
-
applySnapshotIfPresent
public void applySnapshotIfPresent(org.bukkit.entity.Player player) Applies a previously captured snapshot to the player when available.- Parameters:
player- player whose snapshot should be restored
-