Skip to content

物品浏览 GUI ​

先弄清 /ei browse 打开的两级浏览界面: 布局文件放在哪, 一级和二级分别有哪些槽位类型, 以及物品包元数据 pack.yml 怎么填

用 /ei browse 会打开一个两级浏览界面: 一级列出物品包, 点包图标进入二级列出包内物品, 左键取一件到背包 (Shift + 左键取一整组)

两级界面各有一份布局文件, 都放在 plugins/EmakiItem/gui/ 下:

文件层级作用
pack_browser_gui.yml一级列出 items/ 下的每个物品包
item_browser_gui.yml二级列出某个包内的全部物品

打开前先确认: 命令需要 emakiitem.browse 权限 (默认 op), 且只能由玩家执行. /ei browse [页码] 可以直接跳到指定页, 页码从 1 开始; 小于 1 的值按第 1 页处理, 超出总页数则打开一个空页, 用翻页按钮可以退回

物品包元数据 pack.yml ​

你可以在 items/ 下的每个子目录里放一份 pack.yml, 定义这个包在一级界面里的图标外观

直接放在 items/ 根目录下的物品也会构成一个"根包": 它的包 ID 是空串, 同样出现在一级列表里, 显示名取语言键 browser.default_pack_name

yaml
display_name: "<gold>示例物品包</gold>"
icon: "minecraft-chest"
lore:
  - "<gray>共 <white>%count%</white> 件物品</gray>"
  - "<dark_gray>包 ID: %pack%</dark_gray>"
  - ""
  - "<yellow>点击查看</yellow>"
order: 10
键默认说明
display_name目录名一级界面显示的包名, 支持 MiniMessage. 留空时回退为目录名
iconminecraft-chest包图标, CoreLib ItemSource 简写, 与物品定义的 item.source 同语法
lore显示物品数量包图标的 lore. %count% 是这个包的物品数量, %pack% 是包 ID
order100一级界面排序权重, 升序

填 pack.yml 前, 先记住下面三点:

  • 包 ID 由目录相对路径决定, 与 pack.yml 的内容无关
  • 不写 pack.yml 时整份按默认值处理: 图标用 minecraft:chest, 显示名用目录名, lore 显示物品数量
  • pack.yml 不会被物品加载器当作物品定义读取

你能看到哪些包, 由 config.yml 的 data_directories.max_depth 控制目录深度, 超出深度的目录不会成为独立的包

一级界面槽位类型 ​

type作用
pack_entry包图标区域, 按 order 升序填充 (order 相同时按包 ID 字典序), 超出则分页. 点击进入该包的二级界面
page_prev / page_next翻页
page_info页码与统计信息
close关闭界面
filler装饰填充

pack_entry 与 page_info 可用的占位符:

占位符可用位置含义
%pack%pack_entry包 ID
%pack_name%pack_entry包显示名
%pack_lore%pack_entry包 lore, 取 pack.yml 的 lore, 未定义时用默认文本
%count%pack_entry这个包的物品数量, 与 %item_count% 同值
%item_count%pack_entry这个包的物品数量
%current_page% / %total_pages%page_info当前页码与总页数
%pack_count%page_info物品包总数
%item_count%page_info已加载物品定义总数

二级界面槽位类型 ​

type作用
item_entry物品图标区域, 按物品 ID 字典序填充, 超出则分页.左键取一件, Shift + 左键取一整组; 右键无效
back返回一级界面
page_prev / page_next翻页
page_info页码与统计信息
close关闭界面
filler装饰填充

物品图标的外观由物品定义本身渲染, 槽位里如果写了 lore, 会追加在物品原有 lore 之上

page_info 在二级界面可用 %current_page%, %total_pages%, %pack% (当前包 ID), %pack_name% (当前包名), 以及 %item_count% 与 %count% (都是当前包的物品数)

每页容量由布局决定 ​

每页放几个条目, 取决于布局里 pack_entry / item_entry 声明了多少格, 不是固定值. 默认布局两级都给了 21 格 (第 2 至 4 行去掉两侧边框)

改这两个区域的格数会直接改变分页结果, 翻页按钮不用跟着调

相关页面 ​