Minecraft(我的世界)中文论坛
标题:
[CBL∫2b]指令方块进阶教程——模块 §8 : 单次执行模块
[打印本页]
作者:
⭐✔️
时间:
2015-7-31 19:48
标题:
[CBL∫2b]指令方块进阶教程——模块 §8 : 单次执行模块
本帖最后由 贰逼 于 2016-1-10 16:28 编辑
多模块关联
下一页为 单次执行模块
在模块中,为了达成
一个目的
,可以使用多个语句的
单模块来完成
。
但是如果模块的输入有
一系列输出
,那么需要
创建多个模块完成
。
因此在单模块中输入输出关系:
输入→输出
多模块相当于多个单模块
,所以输出输入关系:
输入 →输出
(输入) →输出
→输出
可以看到多模块更加灵活
不必局限于一个模块的体系
。本章就要学习包括
创建调用
多模块,和
控制多模块的操作类型
。
多模块最本质的区别:可被调用
多模块关联包括
建立模块
调用模块
初始执行模块
单次执行模块
setblock法
时钟法
调用效果指令
调用游戏资源
坐标操作
自动寻路
远程法调用逻辑组
关闭模块
全索引链接
上一篇
(初始执行模块)--
下一篇
(调用游戏资源)
§8.4 单次执行模块
下一页为 setblock法
在模块中,
只需要某一段指令仅仅执行一次
,而不是跟着高频一起无限循环。
做到单次执行,一共有
两种方法
:
?8.4.1 setblock法
下一页为 时钟法
前面其实讲到过。setblock法分两种:一种是
单次fill
,第二种是
远程连接
。
单次fill
上面的指令方块:
/fill ~ ~-1 ~ ~1 ~-1 ~ air
复制代码
下面的指令方块:
/fill ~ ~1 ~ ~1 ~1 ~ redstone_block
复制代码
在两个指令方块中间坐标处放置
红石块即可执行一次
。
(比如图中的say 1)
远程连接
接收信号的指令方块:
/setblock ~ ~1 ~ air
复制代码
远程setblock的坐标就是这个
指令方块上面的坐标
。
其中此处采用红石布线,所以使用
红石顺序
。
以上两种方式收到坐标局限,因此对于灵活性较强的
非固定模块不推荐使用
。
?8.4.2 时钟法
通过时钟,
能够让一段指令在符合条件后只会执行一次
:
比如玩家的a>=1后输出一次say 1,
我们可以借助计分板b来
干涉此次执行,构成时钟
:
按照顺序连接高频:
/execute @p[score_a_min=1] ~ ~ ~ scoreboard players set @p b 1
复制代码
*转存时钟
/execute @p[score_b_min=1] ~ ~ ~ say 1
复制代码
/execute @p[score_b_min=1] ~ ~ ~ scoreboard players reset @p b
复制代码
*输出时钟并破坏计分板b
/execute @p[score_a_min=1] ~ ~ ~ scoreboard players reset @p a
复制代码
*清空a
效果:
那么
尽管连接高频,也只会执行一次
。
分析:
首先利用条件语句
切入时钟
,
接着利用时钟输出,并利用时钟
破坏计分板b,让不再输出
,
最后破坏条件,让
第二次循环不再输出
。
比起前面的setblock法,可以适用于灵活性比较高的
不局限于坐标的模块,仅利用计分板达到输出一次
。
标准格式:
条件语句1 /scoreboard players set @p 计分板 1
复制代码
*转存计分板
/execute @p[score_计分板_min=1] ~ ~ ~ 输出
/execute @p[score_计分板_min=1] ~ ~ ~ scoreboard players reset @p 计分板
复制代码
*时钟
清除条件1
*清空
[groupid=546]Command Block Logic[/groupid]
作者:
ksjsk
时间:
2015-7-31 20:44
对于我这个红石小白来说就像是天书。伤心呐,,
作者:
Formula3
时间:
2015-8-1 09:30
虽然有点看不懂,但是依旧坚持看完了,想说,楼主真乃神人也!!!求抱大腿。
欢迎光临 Minecraft(我的世界)中文论坛 (https://www.mcbbs.net/)
Powered by Discuz! X3.5