【触发器攻略】触发顺序(重要内容)

精华更新时间2023/9/24625 浏览攻略
在使用的触发器多起来之后,触发器之间不可避免的会有大量的联动,这个时候很有可能会出现虽然没有逻辑问题,但是出现触发顺序错乱的情况。这主要是不了解触发顺序造成的。就算是同时触发的触发器,其实也有先后之分。本文将详细讲解。
  1. 第一类顺序:按照编号顺序触发
当一个操作,或者是一个触发器,触发了多个触发器的触发启动的时候,这个时候触发顺序是按照编号顺序触发,也是最简单的一类顺序。此种顺序代表的是,在同一优先级下,不同触发器的触发顺序。所有的触发启动优先级相同,而触发触发器在触发触发器组的时候,组内的触发器也视为同一优先级,也适用于此类顺序。
在此解释一下编号的含义。当新建一个触发器的时候,可以看到新的触发器的名字是“触发器xxx”,这边的xxx就是其创建时的编号。第一类触发顺序是按照编号顺序触发的(由于玩家有些时候会删除一些触发器,其实在游戏里面删除一个触发器之后后续所有触发器的编号会向前补位),也就是触发器创建的顺序。一个触发器被创建的时间越靠前,在被触发时其顺序越靠前。
2. 第二类顺序:深度优先搜索
我们首先要知道一件事,就是,触发启动的触发与触发效果里面的触发触发器是两种不同的触发另一个触发器的机制。触发触发器在逻辑上是可以把两个触发器看做是相连的一个触发器。
TapTap
上图所示为普通的触发器的流程。而当我们把其中一个触发效果改成触发触发器时,就会使得触发顺序的改变,即先执行触发触发器指向的部分,再执行剩下的部分。
TapTap
甚至更复杂的分支结构也是如此:
TapTap
至于触发触发器组,相当于优先执行整个触发器组的部分,而整个触发器组内部的触发顺序按照第一类顺序。
3. 第三类顺序:主触发器的执行顺序
一个触发器的效果在执行的时候,有可能会以触发触发器的形式,触发别的触发器。在第二类触发顺序里面,我们了解到,一个触发器的触发流程可能是相当复杂的,但是总体来说,仍然是线性执行一个个的效果(而非同时执行多个效果)。则这些在触发器执行过程中触发的触发器,视为不同时触发。在主触发器结算完成之后,按照按照相对于主体而言触发的时间顺序,依次执行。
TapTap
相对与主触发器而言,同时触发的触发器触发完之后再继续触发下一个时刻被触发的触发器。
  结语:其实同时与不同时都是相对的,主要是因为我们规定,在主体内部,两步操作之间完成的一切步骤,相对于主体都是同时发生的。就像是以上所有的步骤,顺序,看上去很复杂,但是对于玩家来说却是同时发生的一样。
20
4
23