第一中文网

第七十四章 探究:execute的运行流程 (第1/6页)

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

(注:非常不推荐在手机上阅读此章节,请使用平板或电脑阅读此章)

(本章用到了大量的字符画,有可能会出现严重的错位情况,可手动调整字体和大小至最佳状态)

(此章节已于2022年7月17日重写)

在第六十九章,我为了提醒你注意各个子命令的顺序,专门举了个例子:

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

但是你是否有注意到游戏运行这条指令的过程:

1将玩家传送至玩家上方1米的位置(玩家此时抬高了1米)

2将玩家传送至村民上方1米的位置(玩家此时位于村民上方1米)

3将玩家传送至羊上方1米的位置(玩家此时位于羊上方1米)

4将村民传送至玩家上方1米的位置(村民此时位于玩家原本位置上方1米,玩家此时位于羊上方1米)

5将村民传送至村民上方1米的位置(村民此时位于村民原本位置上方1米,玩家此时位于羊上方1米)

6将村民传送至羊上方1米的位置(村民和玩家此时位于羊上方1米)

7将羊传送至玩家上方1米的位置(村民和玩家此时位于羊原本位置上方1米,羊位于玩家原本位置上方1米)

8将羊传送至村民上方1米的位置(村民和玩家此时位于羊原本位置上方1米,羊位于村民原本位置上方1米)

9将羊传送至羊上方1米的位置(村民、玩家和羊此时都位于羊原本位置上方1米)

这个过程有何特殊的呢?

你仔细看看第4、5、7、8和9条过程,你有没有什么发现?

当游戏将村民传送至玩家上方1米的位置时,虽然玩家已经被传送至了羊上方1米的位置,但游戏仍然将村民传送至玩家原本位置上方1米,而不是羊上方2米的位置。

这是怎么回事?

我们设玩家(2,2,2)为A、村民(3,2,3)为b、羊(4,2,4)为c,游戏在运行execute时,其实它的流程是这样的:

execute---A---------b---------c

游戏先解析as @e,得到了上面的三个目标。

execute---A---------b---------c

------------↓---------↓----------↓

---------2·2·2-----2·2·2-----2·2·2

------------↓---------↓----------↓

---------3·2·3-----3·2·3-----3·2·3

------------↓---------↓----------↓

---------4·2·4-----4·2·4-----4·2·4

然后游戏会解析at @e,预先将实体的位置记录下来。上面为了方便展示,用x·y·z来表示坐标。

execute---A------------------------b-----------------------c

------------↓-------------------|----↓------------------|-----↓

---------2·2·2—3·2·3—4·2·4-|-2·2·2—3·2·3—4·2·4-|-2·2·2—3·2·3—4·2·4

本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!

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

新书推荐

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