• ベストアンサー

外部swfをループ読み込みしたい

たとえば3つのswfファイルがあって、 ファイル名を001.swf・002.swf・003.swfとします。 これらのswfファイルをTOP.swfにてループで再生したい場合、 どのようにしたらよいのでしょうか。 001→002→003→001→002→・・・・ といった感じです。 TOP.swfのみにアクションスクリプトを記述して実行したいのですが、、、。 FLASH CS3でアクションスクリプトは2.0を使用しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

TOP.swf のフレーム1に書くスクリプト例です。 ----------------------------------------------- // ロード用の空のムービークリップを作成 var _mc:MovieClip = this.createEmptyMovieClip("loadMC", this.getNextHighestDepth()); // ロード用の空のムービークリップの座標指定 _mc._x = 100; _mc._y = 50; // カウント用の変数 cnt の初期化 var cnt:Number = 1; // 外部SWF をロードするユーザ定義関数 loadSWF を定義 function loadSWF():Void { // ロード用ムービークリップに 00?.swf をロード _mc.loadMovie("00"+cnt+".swf"); // カウント用の変数 cnt のカウントアップ if (cnt<3) { cnt++; } else { cnt = 1; } } // ユーザ定義関数 loadSWF を実行 loadSWF(); // 1フレーム進む時間毎に随時実行 this.onEnterFrame = function():Void { // ロードしたムービークリップのフレーム数が2以上で if (_mc._currentframe>=2) { // 再生フレーム数が全フレーム数と等しい時 if (_mc._currentframe == _mc._totalframes) { // ユーザ定義関数 loadSWF を実行 loadSWF(); } } }; ----------------------------------------------- だだし, 上のスクリプトが無事動作するのは ・読み込む親SWFも読み込まれる子SWFも同じFlashPlayer対応  &同じActionScriptのバージョン対応のSWFをパブリッシュした場合 ・外部SWFが_rootのタイムラインを用いた素朴なアニメーションであって,  &最後のフレームに到着することが「ムービー終了」である場合 です。 「Flash swfのランダム再生 -OKWave」 http://okwave.jp/qa4441312.html

hukazuo
質問者

お礼

ありがとうございました。 無事できました^-^ 最後のフレーム=ムービー終了だったので、 問題はなかったです。

関連するQ&A

専門家に質問してみよう