簡體   English   中英

如何在AS3中的特定幀上播放動畫片段?

[英]How to make a movieclip play on a specific frame in AS3?

我對Flash大約十年來沒有碰過它感到非常生銹,似乎無法弄清楚這一點,也無法在線找到它:

我有一個帶有兩層的MovieClip,每層都有一個補間形狀。 基本上是一扇可以打開和關閉的門。

我將其放到主時間軸上,但現在我需要它來啟動和停止。 自從我上次使用Flash動作可能會在特定的關鍵幀上進行以來,這就是我現在要努力的地方。

我創建了一個名為動作的新層,目的是使事情井井有條,目前擁有:

barrier1.stop();

我只想讓我聲明一個框架(例如57)使barrier1開始播放。 嘗試使用play(); Event.ENTER_FRAME沒有運氣。 我該如何設置?

好了,用movieClip的實例名稱很容易

barrier1.stop(); // Stops the movieClip
barrier1.play(); // Resumes 
barrier1.gotoAndStop(12) // Goes to 12nd frame and stop
barrier1.gotoAndPlay(12) // Goes to 12nd frame and play
barrier1.currentFrame // returns barrier currentframe

要從場景級別捕獲幀:

this.addEventListener(Event.ENTER_FRAME,onLoop);
function onLoop(event:Event){
  if(barrier1.currentFrame == 57){
     trace("BARRIER is in 57. frame");
  }
}

在第一幀的動畫剪輯內

var root:MovieClip = this.parent as MovieClip
root.makeStartSceneAnimation()

**in timeline scene level [root]**

function makeStartSceneAnimation(){
    /// barrier started to play

}

如果使用時間軸,則可以在所需的幀上添加關鍵幀,然后添加stop();。 作為動作層中的動作。 但是請記住,如果您在主時間軸中執行此操作,它將停止所有操作。 如果要停止該MovieClip,則必須在MoviceClip的時間軸內執行此操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM