跳转到正文
iPlugin

制作一个独立 HUD

准备字体和图片,用布局组合内容,再绑定到 HUD 显示

本教程制作一个带图标的欢迎信息。使用独立 ID studio_welcome 和 studio_hud,不会替换默认玩家信息。

准备资产

项目中已有合适字体和图标时直接复用。没有时:

  • 「资源 → 字体 → 上传字体」:选择 TTF,填写字体 ID、字号等配置。
  • 「资源 → 图片」:新建命名空间和图片组,再上传 PNG 或 GIF。

默认主题统一使用 xerr_ui,按用途选择图片组;生命与饥饿同属 player_status,经验和 BossBar 各自分组。目录与下载见默认图片资产包。

图片组就是命名空间下的二级目录。资源 ID 用来引用资产,磁盘文件名用来找到文件,两者不是同一个概念。字体和图片字段分别见字体参考、图片参考。

资源分类中展开 xerr_ui 主题下的 icon 图片组,显示可用图片

图 1:从资源库找到已登记的图标,已有资源可以直接复用。

创建布局

在「布局」标题右侧点击「+」,填写 ID studio_welcome,选择要存放的文件夹并创建。

目录用于整理项目,布局 ID 仍需在项目中唯一。不要依靠放进另一个目录来创建第二个同名布局。

添加图标

在资源库找到已登记图标,拖进画布;右侧可修改其引用、尺寸、层级、锚点和偏移。先完成图标位置,再添加文字,避免一开始同时调整整组内容。

添加文字

从「添加 → 文字」创建元素 message。选择已登记字体,输入:

&f欢迎,&a{{ player name }}

拖动文字到图标旁边。使用相同锚点,再通过局部偏移安排两者距离。需要整组移动时多选,再拖动或使用对齐工具。

如果图片挡住文字,检查绘制层级,而不是给文字加多余空格。

studio_welcome 布局同时包含 gem 图片和 message 文字,右侧显示文字、锚点与偏移

图 2:studio_welcome 将图标和文字组合在一起;选中 message 后使用统一属性面板编辑。

绑定到 HUD

切换「显示」,在 HUD 分类右侧新建 HUD,填写 ID studio_hud,初始布局选择 studio_welcome。

在右侧确认「启用 HUD」,并检查「引用布局」。一个 HUD 可以引用多个布局;展开单条引用后,可独立设置刷新间隔、显示条件和变量。

创建布局只是在制作内容;绑定到显示系统后,它才会作为 HUD 使用。

studio_hud 的引用布局中勾选 studio_welcome,并展开该引用的独立设置

图 3:在 studio_hud 中引用 studio_welcome,展开引用可设置刷新间隔、条件和变量。

检查与发布

用样例数据更换短、长玩家名,检查图标和文字是否挤在一起。修正问题后导出 ZIP,按项目与发布更新服务器。

如果新 HUD 与默认主题重叠,优先调整锚点和偏移;不需要删除默认资产。希望关闭默认 HUD 时,在「显示」里选择对应 HUD,关闭启用状态。

为布局添加更多内容

以下操作都在普通布局中完成。想先熟悉现有配置时,可以在 hud_info 中分别选择 portrait、health 和 name。

添加玩家头像

  1. 从「添加 → 头像」创建元素,选择项目已有的头像模板,例如默认 portrait。
  2. 在右侧点击「编辑头像外观」,调整尺寸、外层皮肤和遮罩;完成后返回布局。
  3. 沿用模板的默认目标即可显示观看者。需要单独指定玩家时,再开启「覆盖默认目标」。

没有头像模板时,先在「模板 → 头像」新建。头像颜色来自玩家皮肤,不用先为每个玩家上传 PNG。

hud_info 中选中 portrait 头像元素,右侧选择头像模板并提供编辑头像外观入口

添加全身人物

先在「模板 → 人物」准备玩家或本地皮肤,再从「添加 → 人物」选择模板。位置仍由布局的锚点、偏移和层级控制;只改变当前引用的目标或动作时使用局部覆盖。

上传皮肤、人物预览与发布步骤见制作全身人物。

制作生命进度条

  1. 从「添加 → 进度条」创建元素,进度模式选「一张满图自动裁切」。
  2. 满图选择 xerr_ui / player_status / health_full,空图可选择同组 health_empty,裁切方向选从左到右。
  3. 数据来源选「生命值」,当前值脚本为 player health,总量脚本为 player max health。
  4. 改变样例数据中的生命值,检查满条、空条和受伤后的变化。
选中 health 进度元素,在右侧设置生命值数据来源、当前值与总量脚本

需要受伤后的延迟追赶时,展开「刷新、缓动与追赶」,开启「延迟追赶」,选择同组 health_trail。自定义图片要先登记,并让满图、空图和追赶图使用相同画布尺寸与显示高度。圆周裁切等字段见图片进度。

给文字添加背景

  1. 选择文字元素,找到右侧「文字背景」。
  2. 在「背景模板」选择已有模板,例如默认 stack_announcement。
  3. 调整背景偏移,让背景覆盖文字,再调整左右内边距;需要更换三段图片时,点击「编辑背景模板」。
name 文字选择 stack_announcement 背景模板,右侧可编辑内边距和背景偏移

没有模板时,先登记左端、中段、右端图片,再到「模板 → 文字背景」创建模板。详细字段见文字背景模板。

制作多行文字

已有 list 文字元素会在右侧逐条显示,可编辑各条内容或点击「添加文字条目」。展开「更多设置」,把「行距」设为例如 12,让文字分行排列。

从普通单行元素开始时,先打开 YAML,将该元素的 value 换成下面的字段;保留原有字体、锚点和坐标:

替换当前文字元素的内容字段
list:
  - "&f第一行"
  - "&7第二行"
offset:
  y: -12

回到属性面板即可逐条编辑。只有需要脚本生成多行内容时才配置 lines;脚本、行数预留和优先级见文字与多行。

同一段文字需要按玩家语言显示时,使用布局多语言,不要复制一套布局来代替译文。

进入关联字体、头像或背景时,注意是否正在修改共享配置。需要单独样式时,按关系与复用建立副本。