2012-02-18 8 views
0

私はコード内のアニメーションのすべてをやっている簡単なActionScriptの2ベースのフラッシュファイルを持っているので、私の映画は、しかし、映画はループにしたいとは思われない12のFPSと長いだけのフレームがあります。アクションの私のコードが発生しますが、一度だけです。各フレームでactionscript 2イベントを発生させるにはどうすればよいですか?

今私は2つのフレームの長い、そして案の定、映画を作る2番目のキーフレームを追加し、コードが最初に再びというように、まず、2番目に解雇します。しかし...私のコードはすべて最初のフレームにあるので、今度はフレームレートの半分でしか発砲しません。 ActionScript3で今

これは簡単でしたが、私は、私が何をすべきかに困惑ので、ここでレガシーAS2を使用する必要があります。

だから、単一フレームアニメーションがターゲットフレームレートでイベントを発生させるためにどのような方法があり、そうでない場合、フレームと私はちょうどそれそのように呼ぶことにします間でコードを共有する方法はありますか?

+0

試してみてください!単一のフレームを作成し、単にトレースを行うコードを追加します。一度だけ実行されます。なぜそれを見るためにコードサンプルが必要なのか分かりません。 – MarqueIV

+0

私はもう一度やりました。ダブルチェック、それは単一のフレームのみを持っていた新しいプロジェクト、24fpsののフレームレートは、[アクション]ウィンドウを開いて作成した、「トレース( 『こんにちは』);」を追加、Ctrlキーを押しながらEnterキーを押すと、などを繰り返し「こんにちは」に示さ登場出力ウィンドウで1回違う結果を得るために何をやっているのかはっきりしない。私が複数のフレームを持っている場合、フレームがヒットするたびにappループとコードが実行されますが、長さは1ではありません。それでも@mfaは1つのフレームで動作する答えを持っていました。 – MarqueIV

+0

@mfaは、私が受け入れた答えにそれを指摘しました。記録のために、自分自身のようなActionScriptを初めて使う多くの人にとって「はっきり」のようなことを避けるようにしてください。全く明確ではありませんでした。私たちにとって、ロジックはフレームのアクションを定義するときに指示されますが、フレームが実行されるたびに起動されるのは理にかなっています。あなたの答えをより客観的に保つようにしてください。 – MarqueIV

答えて

3

これはあなたのケースで動作するはずです。最初のフレームで:

function myFunc(){ 
    //code here 
} 
this.onEnterFrame = myFunc; 
stop(); 

あなたの好みで開始または終了ベースに停止を置くことができます。

+0

パーフェクト!正確に私が必要なもの!しかし、... 'Stop()'が何のためにあるのか説明できますか?私はあなたのコメントを理解していませんでした。それを最初、最後、そして関数の中に入れて、違いを気付かなかった。 – MarqueIV

+0

それでは「停止」は何ですか?推測すると、その特定のフレームで映画が停止するのでしょうか? – MarqueIV

+0

あまりにも多くの1フレームクリップでは本当にうまくいきませんので、私は止めたいです。ちょうど習慣で、あなたはこの場合にそれを必要としません。 – mfa

関連する問題