关于官方test里面sequence的疑问。

如下代码:官方demo ActionsTest中每个sequence中的两个动作之间都会加一个0.25的delayTime。

cc.sequence(actionBy, cc.delayTime(0.25), actionByBack)

请问这是为什么呢?是因为前一个动作一定会提前0.25秒执行吗?

仅仅是表示后面的动作延迟0.25秒后执行。完全可以去掉的,加上延迟时间,这两个动作会更清楚些

delaytime是自己控制的

我现在遇到的问题是,我在一个sequence里面加了一个moveby,和一个callfunc,我debug代码,发现进到callfunc之后,moveby还会执行一小段距离。
所以就去看官方test,然后看到每一个sequence里面都加了一个delaytime。
就是因为moveby没执行完就会触发下一个动作所以才在每一个动作中间都加一个delaytime么?

我在一个sequence里面加了一个moveby,和一个callfunc,我debug代码,发现进到callfunc之后,moveby还会执行一小段距离。

所以就去看官方test,然后看到每一个sequence里面都加了一个delaytime。

就是因为moveby没执行完就会触发下一个动作所以才在每一个动作中间都加一个delaytime么?

:10::10:

这个需要看下你代码怎么写的,还有就是你是不是重复执行了这个。

    this.background.runAction(
        cc.sequence (
            cc.moveBy(0.5,cc.p(100,0)),
            cc.callFunc(function (){
                cc.log("callfunc");
            })
        )
    );

大概就这样。在log处打断点就会发现当断点继续执行之后图片又动了一下。

能确定这个只会执行一次么?另外i你可以在执行这个函数之前跟踪一个时间,然后callfunc执行,再输出一个时间
看是不是不小于0.5s

确定只执行一次。从时间来看,确实没有问题。但是当我放开断点之后,确实还是再移动一小短距离。好奇怪。

似乎sequence这个方法被吐槽了很多次了,目前还是想办法躲坑吧、

:883::883::883::883::883: