• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:flash の ムービークリップの制御)

flashのムービークリップの制御方法について

このQ&Aのポイント
  • フレーム1のムービーを再生した後に、自動的にフレーム2のムービーを再生させる方法について教えてください。
  • GotoAndPlayを1フレーム目に設定すると、フレーム2に直接遷移してしまいます。ムービークリップに設定しているstopが原因でしょうか?他に解決策はありますか?
  • 掲示板での回答では解決せず、初歩的な質問かもしれませんが、どうすればよいか教えてください。

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

  • ベストアンサー
  • DPE
  • ベストアンサー率85% (666/776)
回答No.2

こんばんは。 シーン1からシーン2へ移るのはいいとして・・・ つまり、Aを2回再生した後、Aを止めてボタンが押されるまで待ち、Bを再生したい・・・ということでいいのでしょうか? ムービークリップをループさせたい回数が決まっているなら、基本的に  (ムービークリップの総フレーム数xループ回数) フレームだけ、メインのムービー側でムービークリップを再生すればいいと思いますが... 例によってmovieAが2フレーム、movieBが3フレームでできているムービークリップ、そしてボタンCがあるとしましょう。 1つのレイヤーで管理しようとするとややこしくなるので、A・B・Cをそれぞれ専用に再生するレイヤーと、もう1つ、フレームの流れを制御するレイヤーを作っておくと便利です。 テキストだけで書くと分かりにくくて申し訳ないのですが、   Aを2回再生→Aをストップ(最終フレームを表示させておく)→ボタンが押されるまで待つ→Bを2回再生→シーン1へ戻る という制御を、ざっと次のように考えてみましたが、いかがでしょう? (プロポーショナルフォントだと位置がズレてしまいますので、固定幅フォントで表示してご覧下さい) (Frame) 1 2 3 4 5 6 7 8 9 10 11 12 13 制御用 - - - - - a - - - - - - a  A  ● → → → ● → - - - - - - -  B  - - - - - - ● → → → → → -  C  - - - - ● - - - - - - - -        ●はキーフレーム、→は全く変化しないフレーム、-は何も置かない空白のキーフレーム、aはフレームにアクションを設定することを表しています。 「制御用」レイヤーのフレーム6には前のフレームに戻るアクション「prevFrame();」、フレーム13にはシーン1に戻るアクション「gotoAndPlay("シーン1",1);」を設定します。 しかし、これではフレーム6から先に進まなくなってしまいますよね。 そこで、フレーム5に配置したボタンCのインスタンス(フレームではありません)に、ボタンが押されたらフレーム7にジャンプするアクションを記述するわけです。 ボタンが押されたらフレーム7に・・・というアクションは、    on (release) {     gotoAndPlay (7);    } 「A」レイヤーのフレーム5のキーフレームは、ボタンを表示している時にmovieAが表示されなくなるのを防ぐためのものです。(ボタンとmovieAが同時に表示される必要がない場合は削除して下さい) ここに置かれているmovieAのインスタンスに、次のようなアクションを設定して下さい。    onClipEvent (enterFrame) {     gotoAndPlay (2);           ↑クリップの最終フレーム番号です    } こうしておけば、ボタンが表示されている間もmovieAの最終フレームが再生され続け、止まっているかのように見せることが出来ます。 長くなりましたが、お役に立ちましたでしょうか? 私もFlashを始めて間もない人間なんで、もしかしたら、もっとスマートな方法があるのかもしれません ^^; 何かの参考になれば幸いです。

Mohican
質問者

お礼

DPEさん、誠にありがとうござました!!!それにしても・・・ActionScriptを勉強しなくては・・・。わかりやすく解説していただき、とても助かりました。感謝感激です!!!!!

その他の回答 (1)

  • DPE
  • ベストアンサー率85% (666/776)
回答No.1

まず確認させていただきたいのですが・・・ 例えば、movieAが2フレーム、movieBが3フレームでできているムービークリップだとします。 Aの2フレームを再生した後、Bの3フレームを再生したい・・・ということでしょうか? そういうことでしたら、メインのムービーで  1.フレーム1にキーフレームを設定し、movieAを置く  2.[フレームの挿入]で1フレーム挿入する  3.フレーム3にキーフレームを設定し、movieBを置く  4.[フレームの挿入]で2フレーム挿入する つまり、ムービーでムービークリップを再生するフレーム数を、AやBの総フレーム数と同じにするわけです。 編集画面でムービーを再生するとムービークリップの1フレーム目しか再生されず、一見すると正常に動いていないように見えますが、[ムービーのプレビュー][シーンのプレビュー]等ではムービークリップ内のシーケンスも再生されますので、期待通りに動いているか確認してみてください。

Mohican
質問者

お礼

DPEさんありがとうございます。おっしゃる通りにやってみたのですが、また新たな疑問が・・・ 詳しく言いますとこのようにしたいのです。 シーン1 ボタンを配置→クリックしてGotoAndPlayでシーン2へ シーン2 movieAを再生→もう一度movieAを再生→ストップ→       →ボタンを押す→movieBを2回再生→シーン1に戻る DPEさんの通りにやってみましたが、movieAのフレーム数と同じにして配置すると、今度は延々とムービーがループされstopでも止めることができません・・・。上記のようにするのに、なにか良い方法はありませんか?どうかお知恵をお貸し下さい。よろしくお願い致します。

関連するQ&A

専門家に質問してみよう