天才一秒记住【第一中文网】地址:www.dyzww.cc
如果我们想要仅凭指令就弄出起床战争,别的先不说,单是检测玩家人数是否达标就有点难搞。
我们在第三十六章知道了一条检测实体的指令——\/testfor,也知道了\/testfor在命令方块执行成功后输出的红石信号强度等于探测到的实体数量。但是,如果仅仅靠输出的红石信号做判断,最大也就只能准确判断0~14个,大于14的数量就无法判断了。这时候我们该怎么办呢?
想一想,能否直接把\/testfor输出的信息同步到记分板上呢?
答案是肯定的。mojang给了我们一条指令用于解决这个问题:stats
\/stats(仅存在于Java版1.13更新前,该指令已于Java1.13更新中移除)
作用:通过指令执行的结果来更改记分板上的分数
需要权限等级:Java-2
需要作弊:是
格式:
\/stats block <坐标> set <需要追踪的结果类型><被记分板追踪的目标:目标选择器><计分项>——跟踪并获取某个方块运行指令的指定类型的结果,根据结果修改记分板上的分数
\/stats block <坐标> clear <需要取消追踪的结果类型>——取消跟踪某个方块运行指令的指定类型结果
\/stats entity <实体:目标选择器> set <需要追踪的结果类型><被记分板追踪的目标:目标选择器><计分项>——跟踪并获取指定实体运行指令的指定结果,根据结果修改记分板上的分数
\/stats entity <实体:目标选择器> clear <需要取消追踪的结果类型>——取消跟踪指定实体运行指令的指定结果
那么\/stats指令到底该如何使用呢?
指令的输出结果有五种类型:
1指令执行成功的次数(Successcount)
2指令的查询结果(queryResult)
3受到该指令影响的物品数量(AffectedItems)
4受到该指令影响的实体数量(AffectedEntities)
5受到该指令影响的方块数量(Affectedblocks)
我们使用\/stats指令时,必须要指定我们到底想要让\/stats指令获取什么类型的执行结果,因为每一种执行结果的值都可能不一样。
比如使用clear指令检测玩家背包内有多少个指定物品时,如果我们获取的是Successcount结果类型,那么只会是1或0;而如果我们获取的是AffectedItems,获取到的就是物品的数量。
使用\/stats时,不仅要指定需要获取什么,还要指定两个重要的东西:
1从哪儿获取?
2输出到哪儿?
\/stats指令可以跟踪指定的方块和实体来获取执行在它们身上的指令的结果。看到“跟踪”两字没有?没错,\/stats指令并不是立马就获取到执行指令的结果,而是先跟踪指定的目标,比如一个命令方块,只要这个命令方块执行了指令,它就会将指令的结果输出到指定的计分项当中。
\/stats指令会将得到的值输出到指定的计分项并修改该计分项中指定目标的分数。比如\/stats获取到的结果是13,它就会修改分数到13(除非指定的计分项是只读计分项)。
这就是\/stats的使用方法,看起来还是蛮简单的。现在就让我们实践一下,熟
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!