- 締切済み
画面遷移を等間隔にしたい
たびたびの質問ですがよろしくお願いします。win・cs3・as2で作成中です。 http://www.tokyo-eden.com/ このtopページのような、マスクを使った画面が切り替わるflashを作成しております。 それを4パターン(top_01.swf、top_02.swf、top_03.swf、top_04.swf)作って、親のswf(parent.swf)に読み込む形にしています。 ●top_01~04.swfは、レイヤーが6つに分かれており、順番に レイヤー6:AS レイヤー5:画像1のマスク レイヤー4:画像1 レイヤー3:画像2のマスク レイヤー2:画像2 レイヤー1:画像1(onloadで読み込まれるもの) といった感じです。(※image1、実際にはもっとフレーム数が多くなってしまっていますが、わかりやすく短くした画像をのせました) ●parent.swfは、レイヤーを5つに分けており、順番に レイヤー5:AS レイヤー4:top_01.swfを読み込むMC(インスタンス名:mc_01) レイヤー3:top_02.swfを読み込むMC(インスタンス名:mc_02) レイヤー2:top_03.swfを読み込むMC(インスタンス名:mc_03) レイヤー1:top_04.swfを読み込むMC(インスタンス名:mc_04) となっています。(※image2) ★質問 (1)top_01~04.swfの作成の仕方なのですが、レイヤーの順番や配置はもっと効率的な方法がありますか? (2)parent.swfでは、 onLoad = function(){ mc_01.loadMovie("top_01.swf"); mc_02.loadMovie("top_02.swf"); mc_03.loadMovie("top_03.swf"); mc_04.loadMovie("top_04.swf"); } このようなスクリプトしか書けていません。 今回作成したいのは、 1、top_01~04.swfがそれぞれ10フレーム程度の間隔でフェードイン 2、その後、top_01~04.swfが順番に等間隔でマスクによる画面遷移を繰り返す なのですが、1も2も、top_01~04.swf(子)で間隔を調整すると、ものすごいフレーム数になるうえ、だんだん間隔がずれてきてしまいます。 これを、なんとかparentで等間隔に制御する方法はありますか? 以上、わかりにくい質問で申し訳ないですが、よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- mahny
- ベストアンサー率74% (57/77)
フレームで調整せずに、親にタイマーイベントを仕掛けて 管理してみてはいかがでしょうか? http://livedocs.adobe.com/flash/9.0_jp/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000074.html ex) var movieManageTimer:Timer = new Timer( 5000, 0 ); movieManageTimer.addEventListener( TimerEvent.TIMER, movieManageTimerHandler ); private function movieManageTimerHandler( event:TimerEvent ):void { // ムービーを切り替えて再生する }