§6.2 stats与时钟
stats关联高频,也应当
注意时钟。
stats+条件语句关联高频
本身就是时钟:
比如当玩家背包拥有石头后,输出1。
此时需要关联高频,使用以下指令:
按照顺序执行:
- /scoreboard players set @e[name=f] a 0
- /stats entity @e[name=f] set AffectedItems @e[name=f] a
- /execute @e[name=f] ~ ~ ~ clear @p minecraft:stone
复制代码
*获取执行值
- /execute @e[name=f,score_a_min=1] ~ ~ ~ say 1
复制代码
*条件输出
效果:


一旦玩家拥有石头,立刻清除,输出1。
分析:
构成时钟的主要原因是每次都需要
设定初始值,而后面又使用条件语句,所以相互冲突关联影响结果,所以
构成时钟。
此处AffectedItems表示影响物品栏物品,这是一个很好的验证。
除了stats本身构成时钟,还可
继续增加时钟,构成
双时钟。
使用以下指令,让时钟具有!非效果:
在最后去掉/execute @e[name=f,score_a_min=1] ~ ~ ~ say 1,
依次增加三条指令:
- /scoreboard players set @e[name=f,score_a_min=1] a -1
复制代码
*时钟重新设定值产生!非
- /execute @e[name=f,score_a_min=0] ~ ~ ~ say 1
复制代码
*默认值输出
- /execute @e[name=f,score_a=-1] ~ ~ ~ say 2
复制代码
*重新产生的值输出
效果:

默认输出
检测到石头后
利用了时钟中默认值的方式实现!非,证明了
存在双时钟。
附加部分
练习: