自己画血条
资料夹
| 位置 | 内容 |
|---|---|
images/<样式>/ | 血条图片(样式的 bar.folder) |
icons/*.png | 图标,文字里用 {icon:<文件名>} |
icons.yml | 图标的显示高度 |
fonts/ + fonts.yml | 位图 / TTF 字体 |
resource_pack/、CloudHealthBar.zip | 生成出来的资源包(不要手动改,每次生成会覆盖) |
改了图片后 /chb pack(或 /chb reload)。内容没变时开服不会重新生成。
血条图片
一个血条由 3~6 张尺寸完全相同的 PNG 组成:
| 文件 | 内容 | 必须 |
|---|---|---|
background.png | 底框:外框、凹槽、装饰(宝石、云纹……)。整张图的大小就是血条的大小 | ✅ |
fill_*.png | 满血时的血量条,只画会变短的那一段,其他地方透明 | ✅ 至少一张 |
trail.png | 受伤残影(和血量条同一个范围),通常是浅色 | |
frame.png | 盖在血量上面的东西:刻度、外框高光 |
插件会自动:
- 找出血量图里「有像素的那几列」,从左到右切成
steps格(0= 每个像素一格); - 每一格存成一个字,客户端按血量显示对应的那一格;
- 在最前缘加一点亮光(
edge-glow)。
画图建议
- 用 2 倍像素画(例如显示高度 6 就画 12 像素高),细节更多又不会太糊;
bar.height填显示高度。 - 血量图、残影、外框尽量用不透明的颜色。半透明只建议用在底框。
- 宽度不限,但太宽的图在远处会闪烁;默认血条是 128 ~ 244 像素宽。
默认的三种血条图片(放大 5 倍):
| 普通 | 精英 |
|---|---|
图标
把 PNG 放进 icons/,文件名就是图标名称(icons/boss.png → {icon:boss})。高度在 icons.yml:
default:
height: 8 # 显示高度(文字像素)
ascent: 7 # 往上偏移,不能大于 height
icons:
boss:
height: 9
ascent: 8
默认附带 boss(皇冠)、elite(宝石)、star(星光)、skull(骷髅)。
字体
fonts.yml 里每一个字体都会变成 cloudhealthbar:<名字>:
# 位图字体:fonts/digits.png 按格子切开
digits:
type: bitmap
file: digits.png
height: 8
ascent: 7
space: 3 # 空格宽度
chars: # 每一行对应图片的一行格子,每行字数必须一样 (空格子写 \0)
- "0123456789"
- "/,.%KMB-+:"
- "()x\0\0\0\0\0\0\0"
# TTF / OTF:把字体文件放进 fonts/
kaiti:
type: ttf
file: kaiti.ttf
size: 10 # 大小
oversample: 6 # 清晰度(越大越清楚,资源包越大)
shift: [0, 1] # [左右, 上下] 偏移
skip: "" # 这些字不用这个字体
使用:<font:cloudhealthbar:kaiti>{name}</font>。TTF 由客户端直接渲染,中文字体也可以用(注意字体授权与文件大小)。
资源包交给玩家
| 方式 | 设定 |
|---|---|
| CraftEngine | 默认自动:加进 merge-external-folders,/chb reload 后自动 /ce reload all |
| ItemsAdder | pack.copy-to: ["ItemsAdder/contents/cloudhealthbar/resourcepack"],after-build-commands: ["iazip"] |
| 其他插件 / 自己的资源包 | 合并 resource_pack/ 资料夹或 CloudHealthBar.zip |
| 自带下载服务 | pack.self-host.enabled: true,玩家进服自动下载 |
资源包只用到自己的命名空间 cloudhealthbar,不修改任何原版文件与着色器,和其他资源包不会冲突。
药水效果图标直接引用原版贴图,不占空间。