Javascript 需要停止删除tween动画吗

Javascript 需要停止删除tween动画吗,javascript,createjs,Javascript,Createjs,我创造了一些青少年,但我需要阻止他们 因为我需要在新的tweens中重用一些资产。 覆盖:但是,对某些人来说,true有帮助 这是一个函数,一旦它被设置好了,计时器就可以不受限制地播放,正如你所看到的,有很多回调 window.autoSurfaces = function(){ if(!window.gameStarted){ console.log("autoSurfaces"); playAutoScene();//start playing function to control nu

我创造了一些青少年,但我需要阻止他们

因为我需要在新的tweens中重用一些资产。 覆盖:但是,对某些人来说,true有帮助

这是一个函数,一旦它被设置好了,计时器就可以不受限制地播放,正如你所看到的,有很多回调

window.autoSurfaces = function(){
if(!window.gameStarted){ 
console.log("autoSurfaces");
playAutoScene();//start playing function to control numbers and alpha of wheels
var delay = 700
var animtime = 500

currentTween = createjs.Tween.get(leaves_anim).to({alpha:.7}, animtime).wait(800).call(leavesOut);//call end frame function
tweenAray.push(currentTween)
console.log(currentTween)
 leaves_anim.gotoAndPlay("go");

    function leavesOut(){
    currentTween = createjs.Tween.get(leaves_anim).to({alpha:0}, animtime).wait(200).call(snowIn);
    tweenAray.push(currentTween)
    console.log(currentTween)
     }

    function snowIn(){
    currentTween = createjs.Tween.get(snow_anim).to({alpha:1}, animtime).wait(800).call(snowOut)
    tweenAray.push(currentTween)
    console.log(currentTween)
    snow_anim.gotoAndPlay("go");
     }

     function snowOut(){
    currentTween = createjs.Tween.get(snow_anim).to({alpha:0}, animtime).wait(delay).call(stopAll);
    tweenAray.push(currentTween)
    //console.log("fired");

     function stopAll(){
     playAutoOut();
     leaves_anim.gotoAndStop(0);
     snow_anim.gotoAndStop(0);

        }
     }
 }
}

我设置了currentTween的全局变量,然后:

currentTween = createjs.Tween.get(target).to({alpha:.7}, animtime).wait(800).call(callHandler);
然后:

尝试设置数组-tweenAray.push(currentTween)

也 createjs.Tween.removeAllTweens()

甚至

})

什么都没发生,否则我会出错 我正在从Flash CS6导出

有什么建议吗


干杯

我不确定我是否完全理解你的问题,但这里有一个快速尝试

使用覆盖将导致新的tween停止具有相同目标的任何先前tween。前


createjs.Tween.get(foo).to({x:100,alpha:0.5},200);
get(foo,{override:true}).to({x:500},500);

第二个tween将覆盖第一个tween,因为它们都以
foo
为目标。第一个孩子不会跑

如果要停止tweens,只需保留对tweens的引用,并使用
setPaused(true)
。这实际上杀死了青少年


var tweensToKill=[];
推(newcreatejs.Tween.get(foo.etc)(…);
推(newcreatejs.Tween.get(bar.etc)(…);
// ... 后来:
while(tweensToKill.长度){
tweensToKill.pop().setPaused(true);
}

有人知道吗?我在考虑可能使用时间线之间的连接,我是否能够停止所有的计时器等?谢谢,while循环是最好的方式,你知道任何链接和时间线之间的教程或示例吗,还没有找到,但它可能是未来的最佳选择再次感谢
removeTweens(currentTween);
tweenAray.removeTweens(currentTween)
createjs.Tween.removeAllTweens = function() {
var tweens = createjs.Tween._tweens;
for (var i=tweens.length-1; i>=0; i--) {
    tweens[i]._paused = true;
    tweens.splice(i,1);
}