Class PrepGuiFlowService

java.lang.Object
dev.deepcore.challenge.session.PrepGuiFlowService

public final class PrepGuiFlowService extends Object
Routes prep GUI click flow for page navigation, toggles, and history paging.
  • Constructor Details

    • PrepGuiFlowService

      public PrepGuiFlowService(PrepSettingsService prepSettingsService, ChallengeManager challengeManager, PrepGuiRenderer prepGuiRenderer, Supplier<RunRecordsService> recordsServiceSupplier)
      Creates a prep GUI flow service.
      Parameters:
      prepSettingsService - service used to mutate prep-related component settings
      challengeManager - challenge manager used for current component state reads
      prepGuiRenderer - renderer used for run-history paging checks
      recordsServiceSupplier - supplier for run records data source
  • Method Details

    • handleClick

      public boolean handleClick(org.bukkit.entity.Player player, int slot, PrepGuiPage page, Map<UUID,Integer> runHistoryPageIndices, Runnable readyToggleFlow, Runnable refreshOpenPrepGuis, Consumer<PrepGuiPage> openPrepGui, Runnable closeInventory, Runnable resetWorldFlow)
      Handles a prep GUI click and executes matching navigation or action flow.
      Parameters:
      player - player who clicked in prep GUI
      slot - clicked inventory slot index
      page - current prep GUI page
      runHistoryPageIndices - per-player run-history page index map
      readyToggleFlow - action for toggling ready state
      refreshOpenPrepGuis - action to refresh open prep GUIs
      openPrepGui - action to open a specific prep GUI page
      closeInventory - action to close the player's inventory
      resetWorldFlow - action to trigger world regeneration flow
      Returns:
      true when the click was handled by prep GUI flow logic