### 1. 核心 Bug 修复 (Critical Fixes)
- 耐力/饥饿值锁定失效修复 (Exhaustion Lock Fix) :
- 问题 : 之前版本在耐力耗尽后,饥饿值锁死可能不生效(特别是在 Folia 环境下),或者玩家可以通过进食来绕过锁死从而继续疾跑。
- 修复 :
1. 实现了 物理层面的疾跑封锁 :当耐力耗尽时,强制将饥饿值锁定在 6 (Minecraft 疾跑阈值)。
2. 添加了 FoodLevelChangeEvent 监听器,防止玩家在疲劳状态下通过吃食物来突破饥饿值锁定。
3. 在 consumeStamina 中添加了实时检测,一旦耐力不足立即触发锁定。
- Folia 1.21.8+ 兼容性修复 :
- 问题 : Folia 核心下调度器行为差异导致饥饿值回弹。
- 修复 : 优化了 FoliaTaskScheduler ,使用 tick 为单位并配合实时状态监测,确保在多线程环境下也能稳定锁定状态。
- 无限疾跑/回血 Bug :
- 修复 : 修正了耐力为 0 时仍能疾跑且耐力会恢复的问题。现在耐力耗尽时会强制停止疾跑并播放提示音。
- Action Bar 显示修复 :
- 修复 : 修复了玩家刚加入服务器时 Action Bar 不会自动显示,必须消耗一次耐力后才显示的 Bug。现在玩家上线或数据加载时会自动启动刷新任务。
- 占位符数值修正 :
- 修复 : 修正了 %warzstamina_max% 和进度条占位符始终显示配置文件默认值的问题。现在它们会正确读取玩家 基于权限组的实际最大耐力值 (如 VIP 玩家的 150.0)。
### 2. 新功能 (New Features)
- 权限组耐力上限 (Permission-based Max Stamina) :
- 支持为不同权限组设置不同的耐力上限。
- 例如:普通玩家 100,VIP 玩家 150 ( warzstamina.group.vip )。
- 新增管理指令 :
- /stamina add <player> <amount> : 为指定玩家增加耐力(可用于物品奖励或 RPG 机制)。
- 全版本/核心支持 :
- 完善了对 Minecraft 1.13 - 1.21+ 以及 Folia 核心的原生支持。