Class GuiManager

java.lang.Object
net.chen.legacyLand.gui.GuiManager

public class GuiManager extends Object
GUI 管理器(单例) 管理所有 GUI 会话和表单
  • Method Details

    • initialize

      public static void initialize(org.bukkit.plugin.java.JavaPlugin plugin)
      初始化管理器,并启动超时清理任务(每 30 秒检查一次,超时 5 分钟)
      Parameters:
      plugin - 插件实例
    • openForm

      public GuiSession openForm(org.bukkit.entity.Player player, GuiForm form)
      打开表单
      Parameters:
      player - 玩家
      form - 表单
      Returns:
      创建的会话
    • closeSession

      public void closeSession(org.bukkit.entity.Player player)
      关闭玩家的会话
      Parameters:
      player - 玩家
    • getSession

      public GuiSession getSession(org.bukkit.entity.Player player)
      获取玩家的活跃会话
      Parameters:
      player - 玩家
      Returns:
      会话(可能为 null)
    • getSessionByInventory

      public GuiSession getSessionByInventory(org.bukkit.inventory.Inventory inventory)
      通过 Inventory 获取会话
      Parameters:
      inventory - Inventory
      Returns:
      会话(可能为 null)
    • registerInventory

      public void registerInventory(org.bukkit.inventory.Inventory inventory, GuiSession session)
      注册 Inventory 到会话的映射
      Parameters:
      inventory - Inventory
      session - 会话
    • unregisterInventory

      public void unregisterInventory(org.bukkit.inventory.Inventory inventory)
      注销 Inventory 映射
      Parameters:
      inventory - Inventory
    • registerForm

      public void registerForm(String formId, Class<? extends GuiForm> formClass)
      注册表单类
      Parameters:
      formId - 表单 ID
      formClass - 表单类
    • createForm

      public GuiForm createForm(String formId)
      创建表单实例
      Parameters:
      formId - 表单 ID
      Returns:
      表单实例(可能为 null)
    • cleanup

      public void cleanup()
      清理所有会话