tween 如何实现两个不同对象的动画顺序播放

  1. node_a 和 node_b两个物体
cc.tween(node_a)
    .to(1, {x:100})
    .call(()=>{
        cc.tween(node_b).to(1,{scale:2}).start();
    }).start();
   // 这样是可以的,但是再多物体呢?一层层的回调。


你好,在2.1.1的范例合集中的tween场景中实现了类似项目,你可以参考一下。
https://forum.cocos.com/t/cocos-creator-v2-1-1/72905/94

createjs的這個tween設計本來就不合理。

可以多封裝一層。
你需要的功能如果寫成這樣就一目了然了。
var id = cc.tween.create()
.to(node_a, {x:100}, 1000, {onChange:…})
.to(node_b, {x:100}, 1000, {onChange:…})
.call(…)
.run();

Tween.kill(id)

1赞

常規的tween都會有這麼幾個問題。
1.無法創建多對象鏈式反應。
2.無法對每個to的調用指定專門的onChange
3.無法在to中途改變後續的to邏輯分支
4.無法在不改動tween隊列鏈式反應對象結構的情況下調整目標對象引用。

你好,这个链接已经没有了,我现在也遇到这个问题,在tween的链式调用中,切换target以后动画就不播放了,我是在callback中做的,就像这样

cc.tween(node_a)
.to(1, {x:100})
.call(()=>{
cc.tween(node_b).to(1,{scale:2}).start();
}).start();

但是我的 node_b的动画不播放,2.2.2版本,这里 callback 里面改成 action是没有问题的,所以想知道这如果多对象怎么处理