本帖最后由 贰逼 于 2015-7-28 10:54 编辑

单模块关联
下一页为 执行值与时钟
本章着重复习前面的内容,加深多个模块语句的概念和关联的概念。

所谓单模块是指多个模块语句组成的
和多模块不同,单模块内语句着重过程模块本身强调对象


单模块关联将会涉及到

执行值与条件语句

执行值与循环

执行值与时钟

全索引链接
上一篇(执行值与循环)--下一篇(建立模块)

§7.3 执行值与时钟
由于时钟是多个语句,在此可以把时钟就当做多个和执行值关联的语句


因为有时钟存在,摆脱了初始化值对输出影响,所以使执行值能够轻松关联高频:

在此,可以以一个 获取gamerule值(可以看作自定义指令) 的模块来应证。
比如如果给名叫lol的gamerule设定大于1的初始值,产生粒子效果
可以使用以下指令:


按照顺序执行以下指令:
  1. /scoreboard players set @e[name=f] a 0
  2. /stats entity @p set QueryResult @e[name=f] a
  3. /execute @p ~ ~ ~ gamerule lol
复制代码

*获取gamerule:lol的执行值
  1. /execute @e[name=f,score_a_min=1] ~ ~ ~ /particle fireworksSpark ~ ~ ~ 1 1 1 0.1 100
复制代码

*输出
  1. /gamerule lol 0
复制代码

*创建gamrule:lol

效果:



使用:
  1. /gamerule lol 1
复制代码

就有输出



使用:
  1. /gamerule lol 0
复制代码

就没输出


分析:
最开始初始化值
接着关联相对@p的指令/gamerule lol获取的执行值到f的a变量上,
然后输出,这里就用到了时钟的概念,如果没有获取值而是先初始化,那么条件语句不可能输出,便是一个时钟
最后需要重置/创建gamerule,这又是一个时钟,只是不是变量时钟,用于重置指令。


总之本章是让大家能够进一步学习单模块各种语句和执行值关联,以及体会语句与变量关联
附加部分

练习:
[groupid=546]Command Block Logic[/groupid]