2026-08-28 UI 更新
全部菜单点击音效、功能按钮多槽位复制和旧配置安全迁移。
适用版本:0.26.13-SNAPSHOT
本次更新为全部 LiPet UI 补齐统一点击反馈,并让一个自定义功能按钮能够同时占用多个槽位。
1. 全 UI 点击音效
以下界面全部使用 gui.yml 的 sounds.click:
- 宠物中心主菜单
- 宠物商城与宠物道具商城
- 宠物仓库
- 宠物属性与加点界面
- 宠物管理界面
- 放生确认界面
- 每只宠物的独立背包
配置示例:
sounds:
# 是否启用打开、点击和关闭三类 GUI 音效。
enabled: true
click:
# 点击任意 LiPet 菜单或宠物背包时播放的 Bukkit 音效键。
sound: "minecraft:ui.button.click"
# 音量,取值范围 0-10。
volume: 0.7
# 音调,取值范围 0.5-2.0。
pitch: 1.25
点击菜单按钮、填充区域、空槽或宠物背包物品时都会得到反馈;点击菜单外部不会播放。
2. 功能按钮多槽位
所有内置按钮、custom-items、属性按钮、导航按钮与信息卡片都支持:
main:
buttons:
shop:
enabled: true
# 旧版单槽位,slots 为空时继续使用。
slot: 11
# 非空时覆盖 slot,同一个图标和动作会复制到全部槽位。
slots: [10, 11, 12]
material: "EMERALD"
name: "<green><bold>宠物商城</bold></green>"
action: "nav:shop"
规则:
slots: []:继续使用slot,完全兼容旧配置。slots: [10, 11, 12]:三个槽位显示相同按钮并执行相同动作。- 重复槽位会按原顺序自动去重。
- 任意槽位小于 0 或超出当前 GUI 行数时,配置加载会给出明确中文错误。
- 自定义过的
slot、slots和注释不会在升级时被覆盖。
3. 验证范围
- 默认兼容构建与
-Ppaper-26.2Profile 各执行 99 项自动测试,均为 0 失败、0 错误、0 跳过。 - 自动测试覆盖旧版单槽位回退、多槽位优先、重复槽位去重、非法格式拒绝、旧配置补全及管理员注释保留。
- 自动测试覆盖全部七种 LiPet 菜单类型、宠物背包、菜单外点击和非 LiPet 库存边界。
- 同一成品已在 Paper 26.1.2 Build 70 与 Paper 26.2 Build 111 加载
LiPet 0.26.13-SNAPSHOT,完成/lipet status、/lipet reload和安全关闭探针,日志没有 LiPet 异常。 - 两套旧版
gui.yml均自动补齐slots: []与中文说明,原有slot保持不变;Paper 26.2 另以slots: [10, 11, 12]完成启动及热重载验证,随后已恢复测试配置。 - 本地测试没有可操作的游戏客户端,因此声音事件范围已由自动测试覆盖,但实际客户端听感不列为本轮实机证据。
- 成品使用 Java 21 字节码(class major 65),包含 303 个业务 class,外部依赖 class 数为 0。
- 成品大小为
648419字节,SHA-256:C222441D015611F36CC10C5C49FD2427C297DA85987583882259EFBB0ABB465E。