跳转到正文
iPlugin

GUI 库存界面

在库存窗口中引用布局,组合文字、图片与变量

GUI 库存界面用于箱子菜单等窗口的文字与图片显示。将布局标记写进窗口标题,Xerr 会在打开窗口时绘制对应布局;槽位、物品和点击规则由原版或菜单插件管理。

GUI 库存界面的布局标题与原版物品示例

准备布局

下例复用默认字体 ui 和图片 xerr_ui / icon / gem。使用自己的资产时,先完成字体与图片登记。

plugins/Xerr/core/layout/shop.yml
defaults:
  font: ui
  image:
    namespace: xerr_ui
    basename: icon

shop_title:
  icon:
    x: 0
    y: 0
    image:
      id: gem
  title:
    x: 14
    y: 0
    value: "&8杂货店"

布局不需要加入 HUD。新建布局或修改字体、图片、位置后,执行 /xerr pack,并让客户端加载新资源包。

设置窗口标题

确认 config.yml 已开启 feature.gui.enable,然后在菜单插件的标题设置中填写:

<<shop_title>>

重新打开菜单即可显示布局。Xerr 解析的是最终窗口标题,不要求菜单插件使用特定配置格式。

传入变量

把上例 title.value 改为:

修改 shop_title.title.value
value: "&8{{ get name }} &7· {{ get page }}"

在窗口标题中提供本次使用的变量:

<<shop_title::name=杂货店;page=2>>

name、page 会作为布局变量传入,由 {{ get 变量名 }} 读取。只改文字或变量时,重载后重新打开窗口;坐标和资产改变时仍需重新打包。

开关与标记

这些字段位于 config.yml,修改后重载:

字段自带配置值作用
feature.gui.enabletrue启用库存界面布局标记解析
feature.gui.start<<标记开头
feature.gui.end>>标记结尾

定位与更新

  • 使用布局的局部 X/Y 定位,屏幕 anchor 不参与库存界面定位。
  • 布局在打开窗口时生成,不按 HUD 的刷新间隔持续更新;更新变量后重新打开窗口。
  • 普通菜单文字无需改成布局;只在需要自定义显示的标题中加入布局标记。

窗口标题仍显示原始标记时,检查开关、标记拼写和布局 ID;图形不显示时,再确认布局已打包且客户端已加载资源包。