2013-03-01 27 views
0

有關在父級中暫停和恢復子影片剪輯的快速問題。我的父級動畫片段在幀1,2和3(每個都有自己不同的動畫)內有3個其他子影片剪輯,當情況出現時,它們將在.as文件中調用。AS3在父級中的單獨框架上暫停子影片剪輯

但是,當涉及到暫停父級動畫片段時,我希望能夠返回到它當前所在的子動畫片段的同一幀。例如,Parent在第2幀上,第2幀上的孩子在其自己的動畫的第15幀上,當重新開始時,Parent movieclip將停留在第2幀,而孩子將從第15幀中選取。

此刻只有我能想到的東西會有兩個變量,一個保存當前的父框架,第二個保存childs當前框架,恢復後,轉到父框架,然後'child'.goto和play(child frame)。但是,這是否會要求每個孩子都有相同的實例名稱?

回答

0

沒有看到你確切的設置,我相信你想要的是遞歸的暫停和恢復:

function recursivePause(clip:MovieClip):void 
{ 
    var len:int = clip.numChildren; 
    clip.stop(); 
    for(var i:int = 0; i < len; i++) 
    { 
     if(clip.getChildAt(i) is MovieClip) 
     { 
      recursivePause(clip.getChildAt(i) as MovieClip); 
     } 
    } 
} 

function recursiveResume(clip:MovieClip):void 
{ 
    var len:int = clip.numChildren; 
    for(var i:int = 0; i < len; i++) 
    { 
     if(clip.getChildAt(i) is MovieClip) 
     { 
      recursiveResume(clip.getChildAt(i) as MovieClip); 
     } 
    } 
    clip.play(); 
} 
+0

此刻我在GameContainer夾運行類似這樣的東西里面有一切。我推動任何剪輯,我需要在Pause_array中暫停,然後傳遞給存儲在其中的每個剪輯的暫停命令。我遇到的問題更多的是我不知道如何在不同的框架上暫停剪輯。似乎只要我告訴父剪輯首先轉到正確的框架,併爲孩子使用正確的實例名稱,恢復現在按計劃運行 – ulthanex 2013-03-01 23:06:28