Package dev.deepcore.challenge.session
Class RunStartService
java.lang.Object
dev.deepcore.challenge.session.RunStartService
Coordinates run start transitions and participant preparation.
-
Constructor Summary
ConstructorsConstructorDescriptionRunStartService(org.bukkit.plugin.java.JavaPlugin plugin, SessionState sessionState, ChallengeManager challengeManager, Set<UUID> participants, Set<UUID> readyPlayers, PrepAreaService prepAreaService, WorldClassificationService worldClassificationService, PreviewOrchestratorService previewOrchestratorService, RunProgressService runProgressService, RunStatusService runStatusService, Supplier<List<org.bukkit.entity.Player>> onlineParticipantsSupplier, Supplier<WorldResetManager> worldResetManagerSupplier, PrepBookService prepBookService, Consumer<org.bukkit.entity.Player> clearLobbySidebar, Runnable clearPausedSnapshots, Runnable syncWorldRules, Runnable startActionBarTask, Runnable snapshotEquippedWearablesForParticipants, Consumer<org.bukkit.entity.Player> enforceInventorySlotCap, Runnable startDegradingInventoryTaskWithReset, BooleanSupplier isSharedInventoryEnabled, Runnable syncSharedInventoryFromFirstParticipant, Runnable syncSharedHealthFromFirstParticipant, Runnable syncSharedHungerFromMostFilledParticipant, Runnable applyInitialHalfHeartIfEnabled, BooleanSupplier isDiscoPreviewBlockingChallengeStart, Runnable announceDiscoPreviewStartBlocked, Runnable refreshOpenPrepGuis, DeepCoreLogger log) Creates a run start service. -
Method Summary
Modifier and TypeMethodDescriptionvoidstartRun()Starts a challenge run after validating preconditions and preparing players.
-
Constructor Details
-
RunStartService
public RunStartService(org.bukkit.plugin.java.JavaPlugin plugin, SessionState sessionState, ChallengeManager challengeManager, Set<UUID> participants, Set<UUID> readyPlayers, PrepAreaService prepAreaService, WorldClassificationService worldClassificationService, PreviewOrchestratorService previewOrchestratorService, RunProgressService runProgressService, RunStatusService runStatusService, Supplier<List<org.bukkit.entity.Player>> onlineParticipantsSupplier, Supplier<WorldResetManager> worldResetManagerSupplier, PrepBookService prepBookService, Consumer<org.bukkit.entity.Player> clearLobbySidebar, Runnable clearPausedSnapshots, Runnable syncWorldRules, Runnable startActionBarTask, Runnable snapshotEquippedWearablesForParticipants, Consumer<org.bukkit.entity.Player> enforceInventorySlotCap, Runnable startDegradingInventoryTaskWithReset, BooleanSupplier isSharedInventoryEnabled, Runnable syncSharedInventoryFromFirstParticipant, Runnable syncSharedHealthFromFirstParticipant, Runnable syncSharedHungerFromMostFilledParticipant, Runnable applyInitialHalfHeartIfEnabled, BooleanSupplier isDiscoPreviewBlockingChallengeStart, Runnable announceDiscoPreviewStartBlocked, Runnable refreshOpenPrepGuis, DeepCoreLogger log) Creates a run start service.- Parameters:
plugin- plugin scheduler and lifecycle ownersessionState- mutable session phase/state containerchallengeManager- challenge settings and component managerparticipants- active run participantsreadyPlayers- players marked ready during prepprepAreaService- prep area border and region serviceworldClassificationService- world classification helper servicepreviewOrchestratorService- lobby preview orchestration servicerunProgressService- run milestone progress trackerrunStatusService- run status/timing announcer serviceonlineParticipantsSupplier- supplier for currently online participantsworldResetManagerSupplier- supplier for current world reset managerprepBookService- prep guide book serviceclearLobbySidebar- consumer clearing a player's lobby sidebarclearPausedSnapshots- runnable clearing paused run snapshotssyncWorldRules- runnable that reapplies world rule policiesstartActionBarTask- runnable starting action-bar updatessnapshotEquippedWearablesForParticipants- runnable snapshotting wearablesenforceInventorySlotCap- consumer enforcing inventory slot limitsstartDegradingInventoryTaskWithReset- runnable starting degrading inventory taskisSharedInventoryEnabled- supplier indicating shared inventory modesyncSharedInventoryFromFirstParticipant- runnable syncing shared inventorysyncSharedHealthFromFirstParticipant- runnable syncing shared healthsyncSharedHungerFromMostFilledParticipant- runnable syncing shared hungerapplyInitialHalfHeartIfEnabled- runnable applying half-heart mode if enabledisDiscoPreviewBlockingChallengeStart- supplier for disco-start blocking stateannounceDiscoPreviewStartBlocked- runnable announcing disco start blockrefreshOpenPrepGuis- runnable refreshing prep GUIslog- challenge logger for player/admin messaging
-
-
Method Details
-
startRun
public void startRun()Starts a challenge run after validating preconditions and preparing players.
-