UI界面配置
自定义插件所有界面的外观、布局和文本
UI 界面配置
Zephyrion 采用配置驱动的 UI 系统,所有界面的标题、布局、图标、文字都可以通过配置文件自定义。
配置文件位置
UI 配置文件位于插件目录的 ui/ 文件夹下:
plugins/Zephyrion/ui/
├── search.yml # 搜索界面
├── workspace/
│ ├── list-workspaces.yml # 工作空间列表
│ ├── create-workspace.yml # 创建工作空间
│ ├── admin-workspace.yml # 管理工作空间
│ └── list-members.yml # 成员列表
└── vault/
├── list-vaults.yml # 保险库列表
├── vault.yml # 保险库界面(重要)
├── create-vault.yml # 创建保险库
├── admin-vault.yml # 管理保险库
├── vault-settings.yml # 保险库设置
└── autopickup/
├── list-autopickups.yml # 自动拾取规则列表
└── add-auto-pickup.yml # 添加自动拾取规则配置基础结构
每个 UI 配置文件都遵循以下基础结构:
# 配置根节点(与文件名对应)
list-workspaces:
# 界面标题(支持颜色代码)
title: "&b工作空间"
# 搜索模式时的标题(可选)
title-with-search: "&b工作空间 &7(搜索结果)"
# 物品槽位标识字符
slots: 'E'
# 界面布局
layout:
- "EEEEEEEEE"
- "EEEEEEEEE"
- "EEEEEEEEE"
- "EEEEEEEEE"
- "#########"
- "C#P#S#N#R"
# 按钮配置
button:
split:
slot: '#'
material: BLACK_STAINED_GLASS_PANE
name: "&r"
# 各个功能按钮...布局系统
布局字符说明
布局使用字符来表示每个槽位的用途:
| 字符 | 说明 |
|---|---|
E | 元素槽位(显示列表项目或存放物品) |
# | 分隔装饰槽位 |
P | 上一页按钮 |
N | 下一页按钮 |
S | 搜索按钮 |
R | 返回/关闭按钮 |
C | 创建/确认按钮 |
| 空格 | 空槽位(不渲染任何物品) |
布局示例
标准 6 行布局(36 个物品槽位):
layout:
- "EEEEEEEEE" # 第1行:9个物品槽位
- "EEEEEEEEE" # 第2行:9个物品槽位
- "EEEEEEEEE" # 第3行:9个物品槽位
- "EEEEEEEEE" # 第4行:9个物品槽位
- "#########" # 第5行:分隔线
- "G#P#S#N#R" # 第6行:功能按钮紧凑布局(每行 7 个物品槽位):
layout:
- "EEEEEEE#G"
- "EEEEEEE#P"
- "EEEEEEE#S"
- "EEEEEEE#N"
- "EEEEEEE#R"::: tip 槽位数量自动计算
保险库界面(vault.yml)的每页物品数量由布局中的 E 字符数量自动计算,无需额外配置。修改布局后重启服务器即可生效。
:::
按钮配置
基础按钮
search:
slot: 'S' # 对应布局中的字符
material: COMPASS # 材料类型
name: "&b搜索" # 显示名称
lore: # 物品描述(可选)
- "&7点击搜索物品"状态按钮
某些按钮有多个状态(如翻页按钮):
previous_page:
slot: 'P'
has: # 有上一页时显示
material: ARROW
name: "&b上一页"
normal: # 无上一页时显示
material: BARRIER
name: "&7没有上一页了"返回按钮
返回按钮有两个状态:有上级界面时显示"返回",无上级界面时显示"关闭":
return:
slot: 'R'
return:
material: RED_STAINED_GLASS_PANE
name: "&c返回"
close:
material: RED_STAINED_GLASS_PANE
name: "&c关闭"变量占位符
配置中可以使用变量占位符,格式为 <变量名>:
| 占位符 | 说明 | 适用界面 |
|---|---|---|
<name> | 名称 | 大部分界面 |
<desc> | 描述 | 工作空间、保险库 |
<owner> | 拥有者 | 工作空间、保险库 |
<type> | 类型 | 工作空间 |
<members> | 成员数量 | 工作空间 |
<vault> | 保险库名称 | 保险库界面 |
<used> / <total> | 已用/总配额 | 创建界面 |
<size_used> / <size_quotas> | 容量配额 | 保险库界面 |
<pickup_count> | 拾取规则数 | 自动拾取 |
<not_pickup_count> | 不拾取规则数 | 自动拾取 |
<search_count> | 搜索结果数 | 搜索模式 |
<search_page> / <search_max_page> | 搜索页码 | 搜索模式 |
颜色代码
支持 Minecraft 标准颜色代码:
| 代码 | 颜色 | 代码 | 颜色 |
|---|---|---|---|
&0 | 黑色 | &8 | 深灰 |
&1 | 深蓝 | &9 | 蓝色 |
&2 | 深绿 | &a | 绿色 |
&3 | 深青 | &b | 青色 |
&4 | 深红 | &c | 红色 |
&5 | 紫色 | &d | 粉色 |
&6 | 金色 | &e | 黄色 |
&7 | 灰色 | &f | 白色 |
格式代码:
| 代码 | 效果 |
|---|---|
&l | 粗体 |
&o | 斜体 |
&n | 下划线 |
&m | 删除线 |
&r | 重置格式 |
常用配置示例
修改保险库界面标题
编辑 ui/vault/vault.yml:
vault:
title: "&6&l我的仓库 &7- &b<vault>"自定义工作空间列表项目样式
编辑 ui/workspace/list-workspaces.yml:
item:
admin:
material: DIAMOND
name: "&6<name>"
lore:
- "&7━━━━━━━━━━━━━━"
- "&f描述: &7<desc>"
- "&f类型: &e<type>"
- "&f成员: &a<members> 人"
- "&7━━━━━━━━━━━━━━"
- "&e左键 &7进入工作空间"
- "&e右键 &7管理设置"修改保险库每页显示数量
编辑 ui/vault/vault.yml 的布局:
减少到 27 个槽位(3 行物品):
layout:
- "EEEEEEEEE"
- "EEEEEEEEE"
- "EEEEEEEEE"
- "#########"
- "G#P#S#N#R"增加到 45 个槽位(5 行物品):
layout:
- "EEEEEEEEE"
- "EEEEEEEEE"
- "EEEEEEEEE"
- "EEEEEEEEE"
- "EEEEEEEEE"
- "G#P#S#N#R"更换按钮材料
search:
slot: 'S'
material: SPYGLASS # 更换为望远镜
name: "&b🔍 搜索物品"
lore:
- "&7点击搜索仓库中的物品"
- "&7支持按名称和描述搜索"重要提示
::: warning 注意事项
- 修改配置后需要重启服务器或使用
/ze reload命令重载配置 - 布局中的每一行必须有相同数量的字符(通常为 9 个)
- 修改保险库布局不会影响已存储的物品,物品会自动适应新布局
- 建议在修改前备份原配置文件 :::
::: danger 槽位字符限制
slots定义的字符(默认E)只能用于表示元素/物品槽位- 功能按钮必须使用不同的字符(如
P、N、S、R等) - 同一个字符不能同时作为多个不同用途的按钮 :::