Class ChatUI

java.lang.Object
dev.despical.mazeengine.command.ChatUI

public final class ChatUI extends Object
Exposes a command-facing facade for the plugin's chat panels.

Callers request help, preset listings, maze lists, details, previews, or confirmation panels without constructing their individual renderers. Shared button, centering, and wrapping helpers delegate to the common panel support.

This facade formats and sends Adventure components using current messages and settings. It does not perform maze generation or terrain changes itself; interactive actions return through the command and service layers for their normal permission, ownership, and stale-token checks.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected static final String
     
    protected final MazeEnginePlugin
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    net.kyori.adventure.text.Component
    callbackButton(org.bukkit.command.CommandSender owner, String label, String hover, String color, int seconds, String... command)
    Paper translates callbacks to native custom clicks on 26.3; no hidden command is sent to the client.
    net.kyori.adventure.text.Component
    callbackButton(org.bukkit.command.CommandSender owner, String label, String hover, String color, int seconds, Consumer<org.bukkit.command.CommandSender> action)
     
    static net.kyori.adventure.text.Component
    center(net.kyori.adventure.text.Component component, boolean bold)
     
    protected static void
    checkPage(int page, int pages)
     
    void
    concepts(org.bukkit.command.CommandSender sender, int page)
     
    void
    delete(org.bukkit.command.CommandSender sender, MazeRecord record, boolean restore, net.kyori.adventure.text.Component actions)
     
    protected net.kyori.adventure.text.Component
     
    protected void
    header(org.bukkit.command.CommandSender sender, String key, String... args)
     
    void
    help(org.bukkit.command.CommandSender sender, int page)
     
    protected void
    hint(org.bukkit.command.CommandSender sender, String key)
     
    void
    info(org.bukkit.command.CommandSender sender, MazeRecord record)
     
    void
    list(org.bukkit.command.CommandSender sender)
     
    void
    list(org.bukkit.command.CommandSender sender, int page)
     
    protected void
    navigation(org.bukkit.command.CommandSender sender, String command, int page, int pages)
     
    protected static int
    pixelWidth(String text, boolean bold)
     
    protected net.kyori.adventure.text.Component
     
    void
    presets(org.bukkit.command.CommandSender sender)
     
    void
    presets(org.bukkit.command.CommandSender sender, int page)
     
    void
    preview(org.bukkit.command.CommandSender sender, String name, Preset preset, int width, int depth, Bounds bounds, net.kyori.adventure.text.Component actions)
     
    protected void
    separator(org.bukkit.command.CommandSender sender)
     
    protected net.kyori.adventure.text.Component
    theme(Preset preset)
     
    static String
    wrap(String text, int columns)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

  • Method Details

    • help

      public void help(org.bukkit.command.CommandSender sender, int page)
    • concepts

      public void concepts(org.bukkit.command.CommandSender sender, int page)
    • presets

      public void presets(org.bukkit.command.CommandSender sender)
    • presets

      public void presets(org.bukkit.command.CommandSender sender, int page)
    • list

      public void list(org.bukkit.command.CommandSender sender)
    • list

      public void list(org.bukkit.command.CommandSender sender, int page)
    • info

      public void info(org.bukkit.command.CommandSender sender, MazeRecord record)
    • preview

      public void preview(org.bukkit.command.CommandSender sender, String name, Preset preset, int width, int depth, Bounds bounds, net.kyori.adventure.text.Component actions)
    • delete

      public void delete(org.bukkit.command.CommandSender sender, MazeRecord record, boolean restore, net.kyori.adventure.text.Component actions)
    • checkPage

      protected static void checkPage(int page, int pages)
    • header

      protected void header(org.bukkit.command.CommandSender sender, String key, String... args)
    • separator

      protected void separator(org.bukkit.command.CommandSender sender)
    • hint

      protected void hint(org.bukkit.command.CommandSender sender, String key)
    • center

      public static net.kyori.adventure.text.Component center(net.kyori.adventure.text.Component component, boolean bold)
    • pixelWidth

      protected static int pixelWidth(String text, boolean bold)
    • difficulty

      protected net.kyori.adventure.text.Component difficulty(Preset preset)
    • presetHover

      protected net.kyori.adventure.text.Component presetHover(Preset preset)
    • theme

      protected net.kyori.adventure.text.Component theme(Preset preset)
    • wrap

      public static String wrap(String text, int columns)
    • callbackButton

      public net.kyori.adventure.text.Component callbackButton(org.bukkit.command.CommandSender owner, String label, String hover, String color, int seconds, String... command)
      Paper translates callbacks to native custom clicks on 26.3; no hidden command is sent to the client.
    • callbackButton

      public net.kyori.adventure.text.Component callbackButton(org.bukkit.command.CommandSender owner, String label, String hover, String color, int seconds, Consumer<org.bukkit.command.CommandSender> action)