类 PlayerBlockLife

java.lang.Object
org.bukkit.plugin.PluginBase
org.bukkit.plugin.java.JavaPlugin
com.playerblocklife.PlayerBlockLife
所有已实现的接口:
io.papermc.paper.plugin.lifecycle.event.LifecycleEventOwner, org.bukkit.command.CommandExecutor, org.bukkit.command.TabCompleter, org.bukkit.command.TabExecutor, org.bukkit.plugin.Plugin

public class PlayerBlockLife extends org.bukkit.plugin.java.JavaPlugin
PlayerBlockLife插件主类 - PBL生存游戏模式的核心控制器

这个插件为Minecraft服务器添加了一个独特的生存游戏模式:每个非OP玩家拥有一定数量的生命方块, 这些方块使用不同颜色的羊毛、玻璃或水泥方块表示。当其他玩家挖光某个玩家的所有生命方块时,该玩家会被淘汰。 游戏需要管理员使用/PBL start命令开始,支持限时模式,最后存活的玩家获胜。

主要功能:

  • 管理PBL游戏的完整生命周期(等待、进行、结束)
  • 为非OP玩家分配独特的颜色生命方块
  • 处理生命方块的生成和销毁
  • 监控游戏状态和玩家存活情况
  • 提供PBL专用命令系统(/PBL start, /PBL rstgm)
  • 支持游戏计分板显示
  • 管理员可使用传统命令进行管理
从以下版本开始:
1.0.0
  • 构造器详细资料

    • PlayerBlockLife

      public PlayerBlockLife()
  • 方法详细资料

    • onEnable

      public void onEnable()
      插件启用时调用,执行初始化操作

      初始化流程:

      1. 保存默认配置文件
      2. 初始化所有管理器(注意依赖顺序)
      3. 加载配置和消息数据
      4. 注册事件监听器
      5. 注册命令执行器
      6. 加载玩家数据和皮肤缓存
      7. 启动定时任务
      指定者:
      onEnable 在接口中 org.bukkit.plugin.Plugin
      覆盖:
      onEnable 在类中 org.bukkit.plugin.java.JavaPlugin
      另请参阅:
    • onDisable

      public void onDisable()
      插件禁用时调用,执行清理操作

      执行以下清理操作:

      • 保存玩家方块数据到文件
      • 保存皮肤缓存数据
      • 记录插件禁用日志
      指定者:
      onDisable 在接口中 org.bukkit.plugin.Plugin
      覆盖:
      onDisable 在类中 org.bukkit.plugin.java.JavaPlugin
      另请参阅:
    • reloadConfig

      public void reloadConfig()
      重写 reloadConfig 方法,避免循环依赖
      指定者:
      reloadConfig 在接口中 org.bukkit.plugin.Plugin
      覆盖:
      reloadConfig 在类中 org.bukkit.plugin.java.JavaPlugin
    • reloadPluginConfig

      public void reloadPluginConfig()
      插件的完整重载方法(用于命令)

      重新加载所有插件配置和数据,包括:

      • 主配置文件 (config.yml)
      • 消息配置文件 (messages.yml)
      • 玩家方块数据
      • 皮肤缓存数据

      这个方法通常由管理员通过/pblreload命令调用。

    • getInstance

      public static PlayerBlockLife getInstance()
      获取插件单例实例

      提供全局访问点,允许其他类访问插件主实例。

      返回:
      PlayerBlockLife插件实例
      抛出:
      IllegalStateException - 如果插件尚未启用(实例为null)
    • getBlockManager

      public PlayerBlockManager getBlockManager()
      获取方块管理器
      返回:
      方块管理器实例
    • getSkinManager

      public SkinManager getSkinManager()
      获取皮肤管理器
      返回:
      皮肤管理器实例
    • getLifeSystem

      public LifeSystem getLifeSystem()
      获取生命值系统
      返回:
      生命值系统实例
    • getConfigManager

      public ConfigManager getConfigManager()
      获取配置管理器
      返回:
      配置管理器实例
    • getMessageManager

      public MessageManager getMessageManager()
      获取消息管理器
      返回:
      消息管理器实例
    • getGameStateManager

      public GameStateManager getGameStateManager()
      获取游戏状态管理器
      返回:
      游戏状态管理器实例
    • logInfo

      public void logInfo(String message)
      记录信息级别日志
      参数:
      message - 日志消息
    • logWarning

      public void logWarning(String message)
      记录警告级别日志
      参数:
      message - 日志消息
    • logError

      public void logError(String message, Throwable throwable)
      记录错误级别日志
      参数:
      message - 日志消息
      throwable - 异常对象