正式学习模块前,先了解指令方块驱动核心——高频(与超频)的顺序。*(1.9版本请使用repeat自更新命令方块或者链接chain链式命令方块作为核心,不需要fill clock。如果使用自更新方块,只需要注意依次放置;如果使用链式方块,只需要注意链接的先后。)
模块基础将会涉及到
红石高频
指令方块超频
§α.0 作用
逻辑组中常见的有以下几个:
红石高频显著的特点就是红石布线,从而激活方块。
执行效率一般,但是为逻辑组提供了优点,
因为高频可控,所以能轻易的通过setblock指令控制,
也因为速度较慢,所以能驾驭一些复杂的逻辑指令组,甚至控制逻辑电路,
所以成为了逻辑组的核心。
其他的高频可上网查找,不做较多说明。
0.α.1.2 红石高频
指令方块超频显著的特点就是块输出,从而激活方块。
执行效率很高,所以成为了模块的核心
因为其执行效率,所以能够基本即时完成输出;
但是弊端在于不能驾驭复杂逻辑指令,所以才有后来的一系列近乎模拟编程的教程。
尽管有利有弊,但仍然成为了国外主流。
其他高频可上网查找,不做较多说明。
全索引链接
α.1.1 红石高频
这是红石玩家的数值内容,不做详细解释.
可自行查找,本帖只会介绍中继器类和布线类
α.1.2 指令方块高频
α.1.2.1 FallingSand法
此方法具体教程:
http://www.mcbbs.net/thread-209421-1-1.html
/summon FallingSand ~ ~1 ~ {Tile:152}
通过激活上述指令,在得到的红石块附近的红石都会得到红石脉冲。
这是因为summon后的红石块会再次激活指令,所以达到超频的效果。
α.1.2.2 Setblock法
上方指令方块:
/setblock ~ ~-1 ~ redstone_block
下方指令方块:
/setblock ~ ~1 ~ air
在两个指令方块中间放置红石块,同时激活。
由于执行顺序,所以会先执行下面的,而指令判定放置的时间比执行上面的慢,
所以在放置空气时又在判定放置红石块,于是形成了超频。
α.1.2.3 fill法
fill法输出全是红石块,所以都为信号源
上:
/fill ~(最后坐标与现坐标的差) ~-1 ~(最后坐标与现坐标的差)~ ~-1 ~ redstone_block
下:
/fill ~(最后坐标与现坐标的差) ~1 ~(最后坐标与现坐标的差)air
最后坐标与现坐标的差:
用 fill区域相对的角落的坐标 减去 这两个指令方块中间的坐标 得到的x轴和z轴的差。(y轴为固定)
差为0是直线,为其他数值则是一个区域。
例如
这两个指令方块中间的坐标 为:0 1 0
fill区域相对的角落的坐标 为:-2 1 10
则x轴差为-2,z轴差为10
指令就是:
/fill ~-1 ~-1 ~10~ ~-1 ~ redstone_block
/fill ~-1 ~1 ~10~ ~1 ~ air
因为fill是一个区域性的操作,而上面只是水平区域,但也可垂直,这里不做解释。
与setblock相同原理,只不过将红石改成了红石块,而且输出顺序更有条理。
缺点:fill法的区域块会被动执行,无法破坏,被强制固定了。
α.1.2.4 fill/replace法
为fill演深版,继承了fill法优点
上:
/fill ~(最后坐标与现坐标的差) ~-1 ~(最后坐标与现坐标的差)~ ~-1 ~ redstone_block 0 replace 方块名 (附加值,默认0)
下:
/fill ~(最后坐标与现坐标的差) ~1 ~(最后坐标与现坐标的差)方块名 (附加值,默认0) replace redstone_block 0
最后坐标与现坐标的差:
用 fill区域相对的角落的坐标 减去 这两个指令方块中间的坐标 得到的x轴和z轴的差。(y轴为固定)
差为0是直线,为其他数值则是一个区域。
方块名可以为任何不是红石块的方块名,附加值随意,前提有这个方块
例如
这两个指令方块中间的坐标 为:0 1 0
fill区域相对的角落的坐标 为:-2 1 10
方块名 为:wool
附加值 为:8
则x轴差为-2,z轴差为10,
指令就是:
/fill ~-1 ~-1 ~10~ ~-1 ~ redstone_block 0 replace wool 8
/fill ~-1 ~1 ~10~ ~1 ~ wool 8 replace redstone_block 0
优点:与fill一样,但是由于replace所以降低了效率,但可以直接手动添加/减少红石块超频(不会锁住)
这里要说明,此处不同fill的范围是一个块全部被动执行,这里是一个范围,(这个范围可以非常大)
只要在这个范围内的红石块自动成为超频核心。
综合推荐fill法(最普遍的方式);
若需要可控制的,则推荐fill/replace法.
- 学习创建红石高频;
- 学习创建指令方块超频。
§α.2 执行顺序
α.2.1 执行顺序概念
对于任何红石机械来说都有着先后顺序,不可能同时执行
说明了机械始终存在顺序↑
本章将探究顺序先后的条件与关系。
α.2.1 执行顺序作用
执行顺序作用在于执行一个事件的前后。
举一个简单的例子,
倘若
事件1:b=a;
事件2:在文本框中输出b的值。
若先执行 事件1,再 事件2,
因为输出b的值,而在此之前b=a,所以输出了a的值。
若先执行 事件2,再 事件1,
因为先输出b的值,而b=a在此之后,所以输出的只是b的值。
所以执行顺序无论在逻辑组和模块中都有重要作用。
α.2.2 红石高频中的执行顺序
我不想说了,大家心里明白
延迟顺序比较简单,就是按照延迟的方向执行,
最先执行脉冲刚刚开始时的前端,最后执行脉冲最后到达的末端。
比如脉冲在1 2 3 4处以下列顺序顺序产生信号:
1→2→3→4
那么高频执行的顺序就是
1→2→3→4 →1→2→3→4 →1→2→3→4 →1→2→3→4
α.2.3 指令方块超频中的执行顺序
α.2.3.1 布线顺序
- FallingSand法
- Setblock法
两种方式均使用红石高频中的布线顺序
α.2.3.2 块顺序
所谓的块顺序就是整个fill超频中区域中的执行的顺序。
因为红石块为信号源,所以信号顺序相同,此时就需要微延迟来作为顺序了。
- 探究顺序
由上面两图可以得知↑
若信号相同
那么执行顺序则是:
x- x+ y- y+ z- z+
- 格式布局
可以像上图一样布局↑
也可以按照如此排列↑
两种布局顺序都是一样的。
α.2.4 标准顺序
α.2.4.1 布线
α.2.4.2 延迟
按照脉冲前端至末端顺序依次执行。
α.2.4.3 同信号同延迟
微延迟:
按照:
x- x+ y- y+ z- z+
顺序执行。
[groupid=546]Command Block Logic[/groupid]