Skip to content

更多

物品目标 物品

用于切换操作器和物品匹配的目标物品,默认目标为手持物品或插件GUI相关槽位

参数

说明数据类型默认值
类型string-
索引string-

示例

javascript
// 类型: container 索引:槽位
物品目标('container', '1')
// 装备槽位
// 主手 mainhand,副手 offhand
// 头盔 helmet,胸甲 chestplate,护腿 leggings,靴子 boots
物品目标('container', 'mainhand')
javascript
// 类型: chest 索引:槽位
// 适用箱子、插件GUI等页面
物品目标('chest', '1')
javascript
// 索引:槽位
物品目标('DragonCore', '戒指槽')
物品目标('GermPlugin', '戒指槽')
// 索引:饰品页#槽位
物品目标('YeeJewelry', '饰品背包#戒指')
物品目标('LyInventory', '饰品背包#戒指')
// 若有修改物品的操作请在表达式的最后进行物品保存!!!
物品目标.保存()

获取物品名 物品

示例

yaml
condition:
  - "获取物品名()=='恶魔士兵主手'"

设置物品名 物品

参数

说明数据类型默认值
物品名string-

示例

yaml
action:
  - "设置物品名('恶魔士兵主手')"

获取物品类型 物品

示例

yaml
action:
  # 获取结果均为大写
  - "获取物品类型()=='APPLE'"

设置物品类型 物品

获取物品类型,结果为全大写

参数

说明数据类型默认值
类型string-

示例

设置为苹果

yaml
condition:
  - "设置物品类型('APPLE')"

物品附魔 物品

参数

说明数据类型默认值
附魔类型string-
附魔等级int-

示例

物品附魔

yaml
action:
  - "物品附魔('FORTUNE',1)"

物品祛魔

yaml

action:
  - "物品祛魔('FORTUNE',1)"

删除附魔

yaml
action:
  - "物品祛魔('FORTUNE')"

词条添加 物品

向物品中添加词条

参数

说明数据类型默认值
内容string-
行数int最后一行

示例

添加至最后一行

yaml
action:
  - "词条添加('攻击力: 1000')"

词条不存在则加至最后一行

yaml
action:
  - "!词条匹配('攻击力') && 词条添加('攻击力: 1000')"

添加至 '待强化' 词条下一行

yaml
action:
  - "词条添加('攻击力: 1000',词条定位('待强化')+1)"

词条设置 物品

设置(覆盖)物品指定行的词条,行数从 0 起计,若超出范围则添加词条

参数

说明数据类型默认值
内容string-
行数int-

示例

设置第五行词条

yaml
action:
  - "词条设置('攻击力: 1000',5)"

词条删除 物品

参数

说明数据类型默认值
关键词string-
删除次数int默认全删

示例

删除物品包含关键词的词条

yaml
action:
  # 删除强化初始词条
  - "词条删除('待强化')"
  # 例如出现了5次“打孔失败“,只想保留一条,则删除5-1=4个词条,
  - "词条删除('打孔失败',词条统计('打孔失败')-1)"

从底部开始删除物品包含关键词的词条

yaml
action:
  # 删除物品词条中最底部的攻击力词条
  - "反向删除('攻击力')"

删除指定行 物品

删除物品指定行的词条。行数从 0 起计,若超出范围则删除最后一行

参数

说明数据类型默认值
行数int-

示例

yaml
action:
  # 删除第一行
  - "删除指定行(1)"
  # 未填行数参数则删除最后一行
  - "删除指定行()"

词条统计 物品

统计关键词在物品词条中出现的次数,每行只统计一次

参数

说明数据类型默认值
关键词string-

示例

判断物品是否包含“攻击力”

yaml
condition:
  - "词条统计('攻击力')"

判断 “攻击力” 词条是否存在,不存在则添加词条

yaml
action:
  - "词条统计('无') && 词条添加('攻击力: 1000')"

词条定位 物品

查找物品中含指定关键词的词条行号,行数从 0 起计。若词条不存在,返回 -1

参数

说明数据类型默认值
关键词string-
默认值string

示例

yaml
action:
  # 获取 “攻击力” 词条的行号(如返回 5)
  - "词条定位('攻击力')"
  # 获取物品中第二个包含 “攻击力” 词条的行号
  - "词条定位('攻击力',2)"
  # 判断 “攻击力” 词条是否存在,不存在则添加词条
  - "词条定位('攻击力')<0 && 词条添加('攻击力: 1000')"

词条获取 物品

获取物品指定行数词条信息

参数

说明数据类型默认值
行数int-

示例

yaml
action:
  # 获取指定行,行数从 0 起计
  - "词条获取(0)"
  # 搭配 `词条定位` 获取包含指定关键词的词条
  - "词条获取(词条定位('攻击力'))"

数值修改 物品

修改物品词条(属性)中的数值

参数

说明数据类型默认值
词条string-
数值或计算公式string-

示例

将包含“生命上限”的词条数值修改为固定值 1000

yaml
action:
  - "数值修改('生命上线','1000')"

将包含“攻击力”的词条数值修改为当前值的 1.1 倍,n 代表当前数值

yaml
action:
  - "数值修改('攻击力','n*1.1')"

数值获取 物品

获取物品中的数值

参数

说明数据类型默认值
匹配内容string-
统计多行booleanfalse

示例

yaml
数值获取('等级')
数值获取('攻击力',true) # 统计多行
数值获取('攻击力;物理攻击',true) # 使用;间隔多条匹配内容

判断玩家等级是否符合物品需求

yaml
condition:
  - 数值获取('等级') >= %player_level% else '{prefix}§7不满足物品等级需求'

词条替换 物品

替换物品词条中的关键词。替换次数 可选,默认全部替换

参数

说明数据类型默认值
替换前string-
替换后string-
替换次数int-

示例

yaml
action:
  # 将词条中的“红宝石孔”全替换为“绿宝石孔”
  - "词条替换('红宝石孔','绿宝石孔')"
  # 第一个“攻击力”词条替换为“生命上限”
  - "词条替换('攻击力','生命上限',1)"

整行替换 物品

包含关键词的那行词条整行替换为新文本

参数

说明数据类型默认值
关键词string-
替换内容string-
替换次数int1

示例

“待强化”词条替换为“强化等级”

yaml
action:
  - "整行替换('待强化','强化等级: 1')"

物品数量 物品

参数

说明数据类型默认值
数量int-

示例

yaml
condition:
  - "物品数量() > 10"
yaml
action:
  - "扣除数量(1)"
yaml
action:
  - "增加数量(1)"
yaml
action:
  - "设置数量(1)"

获取NBT 物品

获取物品NBT节点信息

参数

说明数据类型默认值
keystring-
默认值string

示例

yaml
condition:
  - "获取NBT('强化方案')=='默认强化'"
  # NBT不存在时使用第二个参数作为默认值
  - "获取NBT('强化等级',0) > 0"

设置NBT 物品

设置物品NBT节点信息

参数

说明数据类型默认值
keystring-
valuestring-

示例

yaml
action:
  - "设置NBT('强化方案','默认强化')"

物品替换 物品

替换选中物品

参数

说明数据类型默认值
json或物品库string-

示例

javascript
// 替换为反序列化后的物品,可参考 `序列化物品()` 表达式
物品替换('{id:"minecraft:dye",Count:1b,tag:{display:{Lore:["攻击力: 110-220"]}},Damage:8s}')

// 替换为物品库物品,格式:物品库 物品编号 数量
物品替换('mm 恶魔士兵核心 1')

序列化物品 物品

将物品序列化为json,便于存储或搭配 替换物品() 使用

参数

说明数据类型默认值
目标物品string-

示例

默认序列化选中物品

javascript
序列化物品()

// 返回格式 {id:"minecraft:dye",Count:1b,tag:{display:{Lore:["攻击力: 110-220"]}},Damage:8s}

序列化物品库物品,格式:物品库 物品编号 数量

javascript
序列化物品('mm 恶魔士兵核心 1')