链式参数使用点表示法(通过 . 连接),以层级结构访问与对象相关的参数。
举个例子,在一个交互事件中,如果我们能够访问到玩家实例,就可以通过这个对象来获取额外的参数。
通过链式属性访问器,例如:
player.world → 获取玩家当前所在的世界
world.name → 获取该世界的名称
我们可以将它们组合成参数标签,如 <arg:player.world.name>。这个标签会动态返回玩家当前所在世界的名称。
<arg:路径> 和 <viewer_arg:路径> 都支持链式参数。第一段是上下文键,因此可用的根参数取决于文本的执行位置。例如,同一种物品对象可能以 item、item_in_hand、furniture_item、player.main_hand_item、player.off_hand_item 或 entity.item 提供。
如果参数可能不存在,可以用 <arg:路径:默认值> 提供默认值,例如 <arg:entity.item.id:none>。参数不存在且未提供默认值时会报错。
player
| 参数 | 类型 | 描述 |
|---|
| x | 双精度浮点数 | 玩家的 x 坐标 |
| y | 双精度浮点数 | 玩家的 y 坐标 |
| z | 双精度浮点数 | 玩家的 z 坐标 |
| pitch | 单精度浮点数 | 玩家的俯仰角 |
| yaw | 单精度浮点数 | 玩家的偏航角 |
| position | #position | 玩家的位置 |
| block_x | 整数 | 玩家的 x 坐标 |
| block_y | 整数 | 玩家的 y 坐标 |
| block_z | 整数 | 玩家的 z 坐标 |
| food | 整数 | 玩家的饥饿值 |
| saturation | 单精度浮点数 | 玩家的饱和度 |
| name | 字符串 | 玩家的名称 |
| uuid | 通用唯一识别码 | 玩家的通用唯一识别码 |
| world | #world | 玩家所在的世界 |
| is_sneaking | 布尔 | 是否处于潜行状态 |
| is_swimming | 布尔 | 是否正在游泳 |
| is_climbing | 布尔 | 是否正在攀爬 |
| is_gliding | 布尔 | 是否正在滑翔 |
| is_flying | 布尔 | 是否处于飞行状态 |
| gamemode | 字符串 | 玩家的游戏模式 |
| game_edition | 字符串 | 玩家的游戏版本 |
| main_hand_item | #item | 主手中的物品 |
| off_hand_item | #item | 副手中的物品 |
block
| 参数 | 类型 | 描述 |
|---|
| x | 整数 | 方块的 x 坐标 |
| y | 整数 | 方块的 y 坐标 |
| z | 整数 | 方块的 z 坐标 |
| block_x | 整数 | 方块的 x 坐标 |
| block_y | 整数 | 方块的 y 坐标 |
| block_z | 整数 | 方块的 z 坐标 |
| custom_block | 方块定义 | 自定义方块定义;原版方块不存在此值 |
| custom_block_state | 方块状态 | 完整的自定义方块状态;原版方块不存在此值 |
| world | #world | 方块所在的世界 |
| position | #position | 方块的位置 |
world
| 参数 | 类型 | 描述 |
|---|
| name | 字符串 | 世界的名称 |
| uuid | 通用唯一识别码 | 世界的通用唯一识别码 |
| time | 长整数 | 世界的时间 |
entity
| 参数 | 类型 | 描述 |
|---|
| x | 双精度浮点数 | 实体的 x 坐标 |
| y | 双精度浮点数 | 实体的 y 坐标 |
| z | 双精度浮点数 | 实体的 z 坐标 |
| pitch | 单精度浮点数 | 实体的 yRot 值(偏航角) |
| yaw | 单精度浮点数 | 实体的 xRot 值(俯仰角) |
| block_x | 整数 | 实体的 x 坐标 |
| block_y | 整数 | 实体的 y 坐标 |
| block_z | 整数 | 实体的 z 坐标 |
| name | 字符串 | 实体的名称 |
| uuid | 通用唯一识别码 | 实体的通用唯一识别码 |
| world | #world | 实体所在的世界 |
| position | #position | 实体的位置 |
| fire_ticks | 整数 | 实体剩余的着火游戏刻 |
| speed | 双精度浮点数 | 实体当前速度的模,单位为方块/游戏刻 |
| health | 双精度浮点数 | 生物的生命值;其他实体返回 0 |
| max_health | 双精度浮点数 | 生物的最大生命值;其他实体返回 0 |
| item | #item | 掉落物实体中的物品;其他实体不存在此值 |
position
| 参数 | 类型 | 描述 |
|---|
| world | #world | 世界 |
| coordinate | #position | 同一个带世界信息的坐标对象 |
| x | 双精度浮点数 | x 坐标 |
| y | 双精度浮点数 | y 坐标 |
| z | 双精度浮点数 | z 坐标 |
| yaw | 单精度浮点数 | 位置的 xRot 值(俯仰角) |
| pitch | 单精度浮点数 | 位置的 yRot 值(偏航角) |
| block_x | 整数 | 向下取整后的 x 坐标 |
| block_y | 整数 | 向下取整后的 y 坐标 |
| block_z | 整数 | 向下取整后的 z 坐标 |
| biome | 字符串 | 生物群系的命名空间 id |
| block | #block | 向下取整坐标处的方块 |
item
| 参数 | 类型 | 描述 |
|---|
| id | 字符串 | 物品的标识符 |
| custom_model_data | 整数 | 物品的自定义模型数据 |
| is_custom | 布尔 | 检查物品是否为自定义物品 |
| count | 整数 | 物品的数量 |
| is_block_item | 布尔 | 检查物品是否为原版方块物品 |
| random.<id> | 双精度小数 | 物品上已生成的随机值(见 random_values) |
random
| 参数 | 类型 | 描述 |
|---|
| <id> | 双精度小数 | 当前上下文中的命名随机值;缺少的 id 会在 0 到 1 间生成并缓存 |
furniture
| 参数 | 类型 | 描述 |
|---|
| id | 字符串 | 家具的标识符 |
| uuid | 通用唯一识别码 | 家具的通用唯一识别码 |
| variant | 字符串 | 家具的变体 |
| x | 双精度浮点数 | 家具的 x 坐标 |
| y | 双精度浮点数 | 家具的 y 坐标 |
| z | 双精度浮点数 | 家具的 z 坐标 |
| yaw | 单精度浮点数 | 家具的水平旋转角度 |
| pitch | 单精度浮点数 | 家具的垂直旋转角度 |
| position | #position | 家具的位置 |