物品属性
设置材质、名称、Lore、数量、模型与提示信息。
外观字段写在图标下,或集中写入 display:
A:
display:
material: DIAMOND_SWORD
name: '&b物品详情'
lore:
- '&7钻石剑'
- '&7点击查看详情'
amount: 1
damage: 0
unbreakable: true
flags:
- HIDE_ATTRIBUTES
- HIDE_UNBREAKABLE
action: "mmsg '&b钻石剑 &7· &f数量 1'"字段
下表的默认行为以没有继承值为前提。子图标未填写的属性可继承父图标,动画帧未填写的常规外观属性沿用默认外观;新的显示图标应指定物品来源,或继承父图标的来源。
| 字段 | 类型 | 必填 | 默认行为 | 说明 |
|---|---|---|---|---|
material(mat) | 文字 | 否 | 不指定新来源 | 原版材料名称,例如 PAPER |
head(skull) | 文字 | 否 | 不指定新来源 | 玩家名、纹理 ID 或 Base64 纹理值,见物品来源 |
texture | 来源对象 | 否 | 不指定新来源 | 外部或序列化物品,见物品来源 |
name | 文字 | 否 | 不修改已有名称 | 显示名称,支持颜色与占位符 |
lore(lores) | 文字或文字列表 | 否 | 不修改已有 Lore | 物品说明,列表每项一行;也可使用多行文字 |
enhancedLore | 布尔值 | 否 | 不转换文字形式的 \n | 开启后将 Lore 中的文字换行标记拆成多行,详见下文 |
amount(count、amt) | 整数或表达式文本 | 否 | 不修改已有数量 | 显示数量 |
damage(durability、dur) | 整数或表达式文本 | 否 | 不修改已有损伤值 | 0 表示无损伤 |
customModelData(model) | 整数或表达式文本 | 否 | 不修改已有模型编号 | 整数模型编号 |
itemModel(item_model、item-model) | 文字 | 否 | 不修改已有物品模型 | 命名空间:路径 格式,支持占位符;需要 1.21.2+ |
glow(shiny) | 布尔值或表达式文本 | 否 | 不修改已有闪光设置 | 闪光与附魔文字显示,见附魔与发光 |
enchantments(enchantment、enchant) | 键值映射 | 否 | 不添加附魔 | 左侧是附魔名称,右侧是整数等级 |
flags(flag) | 文字或文字列表 | 否 | 不添加标志 | 隐藏指定提示信息,不清除已有标志 |
hideTooltip(hide_tooltip、hide-tooltip) | 布尔值或表达式文本 | 否 | 不修改已有提示框设置 | 隐藏整个物品提示框,需要 1.20.5+ |
unbreakable | 布尔值或表达式文本 | 否 | 不修改已有不可破坏设置 | true 设置为不可破坏 |
nbt | 键值映射 | 否 | 不添加或覆盖标签 | 值为文字、数字或布尔值,支持占位符 |
slot(slots、pos、position、positions) | 整数、文字或位置列表 | 否 | 使用布局中对应字符的位置 | 面板内的局部位置,见布局与槽位 |
Lore 与换行
A:
material: PAPER
lore:
- '&7第一行'
- '&7第二行'每项本身就是一行,不需要 enhancedLore。
节点或占位符返回的文字也按同样规则处理:如果返回真正的换行,直接分行;如果返回文字形式的 \n,在对应显示配置中开启 enhancedLore。它只处理 Lore,不控制名称、聊天消息、颜色或附魔。
enhancedLore 与 lore 放在同一份显示配置中:使用 display 时都写在 display 下;使用图标简写时都直接写在图标下。动画帧需要处理文字形式的 \n 时,也在相应帧中填写 enhancedLore: true。
完整换行示例
menu:
title: '&8物品说明与换行'
rows: 1
bindings:
command: lore-demo
panels:
- layout:
- 'ABC '
icons:
A:
material: PAPER
name: '&f普通列表'
lore:
- '&7第一行'
- '&7第二行'
B:
material: PAPER
name: '&f文字换行标记'
enhancedLore: true
lore:
- '&7第一行\n&7第二行'
C:
material: PAPER
name: '&f多行文字'
lore: |-
&7第一行
&7第二行下载 lore-demo.yml。使用 /lore-demo 打开,三个图标均显示两行说明。
数量与动态值
# 写在 icons 中
a:
material: PAPER
name: '&f计数'
amount: '{{ctx get count}}'在菜单顶层可设置初始数量:
events:
pre_open: 'ctx set count to 1 true'count 也可由打开参数或菜单动作设置。数值改变后使用 icon update 更新当前图标,或使用 icons update 更新现有图标。两者都保留生成器的当前页;需要同时切换子状态时见图标刷新。
模型
A:
material: PAPER
name: '&f模型按钮'
customModelData: 1001customModelData(别名 model)填写整数模型编号。
隐藏提示信息
A:
material: DIAMOND_SWORD
name: '&b展示物品'
unbreakable: true
flags:
- HIDE_ATTRIBUTES
- HIDE_UNBREAKABLE| 设置 | 隐藏内容 |
|---|---|
HIDE_ENCHANTS | 附魔文字 |
HIDE_ATTRIBUTES | 属性提示 |
HIDE_UNBREAKABLE | 不可破坏提示 |
hideTooltip: true | 整个物品提示框,需要 1.20.5+ |
hideTooltip 的别名是 hide_tooltip、hide-tooltip。
其他字段
nbt 使用键与文字、数字或布尔值的映射,例如:
nbt:
example_tag: 'menu_button'导入物品已有的不可破坏、隐藏提示等属性会保留;unbreakable: false 与 hideTooltip: false 不负责清除这些已有属性。
物品染色
物品的 color 字段不生效,不会改变皮革装备等物品的染色。需要展示已染色的皮革装备等物品时,使用物品来源导入已有物品的颜色。名称与 Lore 的文字颜色直接使用颜色代码。
最后更新于