0

少し問題があります...大学で友達のフラッシュプロジェクトをやろうとしています。実際にはとても簡単なことですが、フルタイムのコーディングの代わりにフラッシュの使用をやめたため、基本的にAS3の知識がありません。数年前。とにかく、それは明け方にならなければならないので、誰かが私のためにこのコードを分解した場合、私(そして私の貧しい友人)は永遠に恩恵を受けるでしょう。

この行は何をしますか:

var numFrames:int = this.dances_mc.totalFrames;

タイムラインの最初のフレームにはdances_mcというシンボルがあり、5つほどのフレームと停止機能があります。これらの各フレームには、異なるテキストと画像が含まれています。ボタンによってテキストと画像が変更され、最後にループバックする完成したデモがあります。

ファイル内のASは次のようになります。

trace("movie starts"+this.dances_mc.totalFrames);

var index_num:Number= 1;
var numFrames:int = this.dances_mc.totalFrames;

// Your code goes here

stop();

ボタンが押されるたびに次のダンスを表示するイベントハンドラーを作成する必要があります。次に、イベントハンドラーを改善して、最後のダンスが表示されたら、ボタンを押すと最初のダンスが再び表示されるようにします。

前もって感謝します !!

4

1 に答える 1

1

問題の行は、そのムービークリップに含まれるフレーム数を示しているため、いつ最初のフレームにループバックするかを知ることができます。

あなたの // の代わりにあなたのコードをここに置きます:

function nextDance(e:MouseEvent = null):void {
    index_num++;  //increment your current index when the button is clicked
    if(index_num > numFrames){  //if your index is higher than the total amount of frame, go back to the first one
        index_num = 1;
    }
    this.dances_mc.gotoAndStop(index_num); //go to the frame of the new current index;
}

yourButton.addEventListener(MouseEvent.CLICK,nextDance,false,0,true);
于 2012-08-16T18:39:35.003 に答える