Package dev.deepcore.challenge.session
Class SessionUiCoordinatorService
java.lang.Object
dev.deepcore.challenge.session.SessionUiCoordinatorService
Coordinates run action-bar updates and lobby sidebar refresh scheduling.
-
Constructor Summary
ConstructorsConstructorDescriptionSessionUiCoordinatorService(org.bukkit.plugin.java.JavaPlugin plugin, TaskGroup taskGroup, String lobbySidebarTaskKey, ActionBarTickerService actionBarTickerService, RunStatusService runStatusService, SessionState sessionState, Supplier<List<org.bukkit.entity.Player>> onlineParticipantsSupplier, ParticipantsView participantsView, SidebarModelFactory sidebarModelFactory, Supplier<RunRecordsService> recordsServiceSupplier, IntSupplier readyCountSupplier, LobbySidebarCoordinatorService lobbySidebarCoordinatorService, LobbySidebarService lobbySidebarService) Creates a session UI coordinator service. -
Method Summary
Modifier and TypeMethodDescriptionvoidclearLobbySidebar(org.bukkit.entity.Player player) Clears the lobby sidebar for a specific player.voidStarts the action-bar ticker for live run status updates.voidStarts periodic lobby sidebar refresh scheduling.
-
Constructor Details
-
SessionUiCoordinatorService
public SessionUiCoordinatorService(org.bukkit.plugin.java.JavaPlugin plugin, TaskGroup taskGroup, String lobbySidebarTaskKey, ActionBarTickerService actionBarTickerService, RunStatusService runStatusService, SessionState sessionState, Supplier<List<org.bukkit.entity.Player>> onlineParticipantsSupplier, ParticipantsView participantsView, SidebarModelFactory sidebarModelFactory, Supplier<RunRecordsService> recordsServiceSupplier, IntSupplier readyCountSupplier, LobbySidebarCoordinatorService lobbySidebarCoordinatorService, LobbySidebarService lobbySidebarService) Creates a session UI coordinator service.- Parameters:
plugin- plugin scheduler and lifecycle ownertaskGroup- grouped task lifecycle managerlobbySidebarTaskKey- task key for lobby sidebar updatesactionBarTickerService- action-bar ticker servicerunStatusService- run status/timing announcer servicesessionState- mutable session phase/state containeronlineParticipantsSupplier- supplier for currently online participantsparticipantsView- participant roster and counts viewsidebarModelFactory- sidebar model builderrecordsServiceSupplier- supplier for run records servicereadyCountSupplier- supplier for current ready player countlobbySidebarCoordinatorService- sidebar refresh coordinator servicelobbySidebarService- sidebar rendering/clear service
-
-
Method Details
-
startActionBarTask
public void startActionBarTask()Starts the action-bar ticker for live run status updates. -
startLobbySidebarTask
public void startLobbySidebarTask()Starts periodic lobby sidebar refresh scheduling. -
clearLobbySidebar
public void clearLobbySidebar(org.bukkit.entity.Player player) Clears the lobby sidebar for a specific player.- Parameters:
player- player whose lobby sidebar should be cleared
-