第一中文网

第六十九章 修饰子命令 上 三要素与修饰子命令 (第4/4页)

天才一秒记住【第一中文网】地址:www.dyzww.cc

行了3x3=9遍。

太离谱了是不是?但既然写两个@e会造成混乱的话,那么该怎样写呢?

因为第一个as子命令已经更改了执行者,后面的子命令都会按照更改后的来,所以我们只需要:

\/execute as @e at @s run tp @s ~~1 ~

将at的@e改为@s即可。

或者说把at放前面,曲线救国一下:

\/execute at @e as @e[limit=1,sort=nearest] run tp @s ~~1 ~

这也是可以的。

所以在execute中,各个子命令的顺序十分重要,每个子命令都会影响到后面的子命令。希望你能记住这一点,不然可能会犯一些就像上面这样的严重错误。

我们再来试试结合in和at两个子命令,看看当两个子命令所影响的范围有重合时会发生什么:

\/execute at @s in minecraft:the_nether run tp @s ~~~

\/execute in minecraft:the_nether at @s run tp @s ~~~

你可以猜一猜,当你运行这两条指令时,效果分别是怎样的?

首先,第一条指令的效果和之前『\/execute in minecraft:the_nether run tp @s ~~~』的效果不能说十分相似,只能说是完全一样。at子命令将执行位置和朝向设定为了你的位置和朝向,但由于本来就是这样所以可以去掉。in虽然仅仅会影响到维度,但如果像是地狱这种特殊的维度,在影响到维度位置的同时,in也会对当前的坐标进行设置。所以说是完全一样,并不会说你这样设置可以将你传到地狱而不改变坐标的。

而第二条指令就更不用说了,in刚刚把维度改过去,at又改了回来,所以第二条子命令相当于『\/tp @s ~~~』,把自己传送到自己的位置,实际上没有任何效果。

所以说,execute就像是个流水线,指令的三要素从指令开头出发,依次经过各个修饰子命令的洗礼,最终在run子命令『出厂』。采用这种『流水线思维』,我们才能更好地理解更加复杂的execute命令。

本章到此结束。

如遇章节错误,请点击报错(无需登陆)

新书推荐

都市超品仙医 活在两个世界 大秦:这个太子总想着造反 与其说瞎话不如 穿越万界:神功自动满级 诛神乾坤 多子多福,仙女都被他抢了怎么办