/stats

/stats

原文:Commands/stats;源修订:3860719。

本条介绍 Java 版中已过时的功能,所需权限等级为 2。该命令管理如何使用其他命令的执行结果更新记分板记分项。

方块(具体为命令方块和告示牌)或实体均可执行命令。玩家能直接执行,其他实体则可通过 /execute 间接成为命令来源。命令执行后,会返回一种或多种“命令统计值”:成功次数、受影响方块数量、受影响实体数量、受影响物品数量,和/或查询结果,例如 time query daytime 的结果。

stats 可为指定方块或实体的每种命令统计值设置或清除“选择器”和“记分项”。选择器(如 @e)按输入原样存储,不会立即求值。该方块或实体之后运行命令时,才使用存储的选择器选中其他实体,并以命令统计值更新这些实体的记分板分数。该值随后可像其他记分板数值一样显示或参与运算。

也可用红石比较器获取命令方块的成功次数,但最大值为 15;记分板分数则可存储 -2147483648 至 2147483647 的任意整数。成功次数和查询结果通常也会显示在聊天中。

语法

stats block <x> <y> <z> clear <stat>
stats block <x> <y> <z> set <stat> <selector> <objective>
stats entity <selector2> clear <stat>
stats entity <selector2> set <stat> <selector> <objective>

参数

  • x y z(仅 block 模式):提供命令统计值的方块位置。x、z 须在世界边界 -30000000 至 30000000 内(含端点),y 须在 0 至 255 内(含端点)。可用波浪号坐标表示相对于命令执行位置的坐标。
  • selector2(仅 entity 模式):提供命令统计值的实体,须为玩家名称或目标选择器。
  • stat:要设置或清除选择器和记分项的命令统计类型,必须为下表中的一种。
  • selector(仅 set 模式):指定方块或实体执行命令时才求值的选择器,用来决定哪些实体的记分项以 stat 返回值更新。由于此时不立即求值,形式上可以是任何内容,但只有玩家名称或目标选择器能产生有用结果。玩家名可以是虚构名称,因此真实玩家也无需在线。
  • objective(仅 set 模式):以 stat 返回值更新的记分项名称。由于此时不立即求值,形式上可以是任何内容,但只有已定义记分项的名称能产生有用结果。
stat 返回内容
AffectedBlocks 命令影响的方块数量
AffectedEntities 命令影响的实体数量
AffectedItems 命令影响的物品数量
QueryResult 命令查询结果
SuccessCount 命令成功次数

结果

参数指定不正确、指定方块无法跟踪统计(即不是命令方块或告示牌),或 selector2 无法解析为一个或多个有效实体时失败。指定名称的玩家须在线。

成功时,清除或设置用于接收 stat 返回值的选择器和记分项。

示例

让 (0,64,0) 的方块以自身命令的查询结果更新最近玩家的 MyObj 记分项:

stats block 0 64 0 set QueryResult @p MyObj

停止让 (0,64,0) 的方块以自身命令成功次数更新任何记分项:

stats block 0 64 0 clear SuccessCount

让最近的凋灵之首投射物以自身命令影响的方块数量更新虚构玩家 #FakePlayer 的 NumBlocks 记分项:

stats entity @e[type=wither_skull,c=1] set AffectedBlocks #FakePlayer NumBlocks

另见

来源为 Minecraft Wiki;本中文翻译/改编按 CC BY-NC-SA 3.0 共享。