• ベストアンサー

シーンを通して使用するBGMのon/offに合わせてムービークリップの座標を変えたいんですが・・

慣れないさぎょうなのに、必要に迫られております。サウンドの制御は各シーンを通じて出来ていますが、それに同期させてムービークリップを切り替える事が出来ず無駄に時間を浪費しております。どなたかお助けください。

  • Flash
  • 回答数1
  • ありがとう数0

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

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

タイムラインでサウンドの ON/OFF を管理していて、サウンドに合わせてムービークリップを動かしたいのであれば、「プロパティ」パネルにある「サウンド」→「同期」のリストから「ストリーミング」を選んで、アニメとサウンドを同期させてしまう方法が一番簡単です。 ユーザーがボタンでサウンドの ON/OFF を切り替えられるようにしているなど、ActionScript の Sound オブジェクトを使って ON/OFF を操作している場合は、タイムラインを使ってムービークリップを動かすことができませんから、少し工夫が必要です。 詳細が分からないので具体的なスクリプトまでは提示できませんが、ここでは、考え方だけ。 Sound オブジェクトでは動的にサウンドの ON/OFF を操作できますが、今、演奏中か停止中かは知ることができません。 そこで、変数(フラグ)を1つ用意して、サウンドの ON/OFF を把握できるようにします。このフラグを、サウンドの再生を開始した時に true、サウンドを停止した時に false にします。 ムービークリップの方では、ムービークリップイベント enterFrame を利用して常時このフラグを監視します。サウンドが ON であれば ON の時のアニメを、OFF の時は OFF のアニメを実行すればいいわけです。 分かりにくいアドバイスで恐縮ですが、何かのお役に立てれば幸いです。

関連するQ&A

  • ムービークリップが残る

    ムービークリップが,シーンをまたいで残ってしまうというのはどんな原因が考えられるでしょうか。 シーン1に置いているムービークリップなのですが,ドラッグの設定をしています。ドラッグをするとなぜかシーン2のほうに表れてしまいます。どうしてでしょうか。

    • ベストアンサー
    • Flash
  • ムービークリップ内のムービークリップ制御について

    誠に不勉強の段お許しください。 Flashでサイトを製作しているのですが、どうしても分からず投稿させていただきました。 仮に -rootにボタンとAムービークリップ配置しました。 また、Aムービークリップ内の10フレー目にBムービークリップを配置し、Bムービークリップ内にボタンを配置しています。 _rootのボタンからAムービークリップを制御して10フレーム目のBムービークリップを表示はできるのですが、-root上でAムービークリップのBムービークリップ内のボタンでBムービークリップを制御するのにはどうすればよろしいのでしょうか。 なにとぞご教授いただけましたら幸に存じます。

  • flashのBGMのoff/onボタン

    はじめまして。Flashがまだよくわかっていない初心者です。マニュアル本、こちらのhttp://oshiete1.goo.ne.jp/qa1789705.htmlを参考にやってみましたが、わかりません。お願いです。教えてください。 最初に開いたらBGMがデフォルトで鳴っていて、「サウンドOFF」ボタンを押すとBGMは停止し、アニメーションは最後までという内容です。 現在の状況および作成手順ですが、 「シーン1」には2つレイヤーがあり、1つ目のレイヤーは「but」とし、これにはサウンドOFF/ONのムービークリップを配置してあります。フレームは1つだけで、ここに下記を記述(action)しました。 ---------------------------------------- onClipEvent(load) { //サウンドを挿入 snd = new Sound(); snd.attachSound( "BGM" ); //無限ループ再生設定 snd.onSoundComplete = function() { this.start(); }; //サウンドの再生状況を保持する変数 //再生時true、それ以外はfalse play_flg = false; //再生状況に応じたフレームを表示 gotoAndStop( Number( play_flg ) + 1 ); } on(release) { //サウンド再生時は止める if( play_flg ) { snd.stop(); play_flg = false; } //停止中の場合は再生する else { snd.start(); play_flg = true; } //再生状況に応じたフレームを表示 gotoAndStop( Number( play_flg ) + 1 ); } ---------------------------------------- 2つ目のレイヤーには「写真」という名前で写真5枚がフェードインアウトしながら切り替わる、というムービークリップを制作しました。 これをプレビューすると、ムービーは実行されますがBGMは鳴りません。また「サウンドOFF」「サウンドON」のボタンが繰り返してしまいます。 デバック出力で下記エラーと表示されます。 ---------------------------------------- **エラー** シーン = シーン 1, レイヤー = but, フレーム = 1 :行 1:クリップイベントはムービークリップインスタンスでのみ使用可能です。 onClipEvent(load) **エラー** シーン = シーン 1, レイヤー = but, フレーム = 1 :行 21:マウスイベントはボタンインスタンスでのみ使用できます。 on(release) ActionScript エラー数 :2 報告済みエラー :2 ---------------------------------------- どうかどのようにしたらいいのか教えてください。お願いします。

  • ムービークリップからシーンを指定してgotoAndPlay

    ムービークリップの中にあるボタンからシーンを指定してフレームにジャンプすることはできますか?

  • ムービークリップの初期座標

    こんにちわ 今回はちょっと技術的な問題というより 気付いた所を質問させてください。 メインステージに配置したムービークリップが あるのですが、プロパティでは整数値になっています。 スプリクトにてそのムービークリップを移動させ IF文なんかで制御しようとしたらなかなか思ったように動きません。 (正確にいうと、あるルーチンを処理したら動いた) あれ?何故だろと思い試行錯誤した結果、 トレース機能で見てみれば最初の移動している ムービークリップが小数点を含んで動いていました。 なーんだ、じゃどこかのフレームで初期設定してやればいいのかと思い (プロパティでは整数なのにブツブツ・・・) 初期設定で整数値に座標をセットして動かすと またもやトレース内には少数値が・・・・ 今は仕方なく、判断させるIF文にOR判断させ 整数と少数の二本立てで判断させ上手く動いていますが これってどーゆー現象なのでしょうか。 お暇な時で結構なので教えてくださいませ。

    • ベストアンサー
    • Flash
  • ムービーメーカー シーンについて

    windowsムービーメーカーについて質問があります。 DVカメラの映像をパソコンに取り込み、いくつかのクリップをストーリーボード上にドラッグしてクリップ間には切り替え効果も使い、各クリップの最初数秒にはツールを使ってタイトルも映像上に表示されるようにしました。 ところがムービー発行からメニュー画面を選び、DVDに保存した後にDVDを再生してみるとシーンに各クリップが反映されておらず適当なシーン配分になっています。 せっかく各クリップ毎に冒頭にタイトルも入れ作成したのに、クリップを無視してシーン分けされているのが残念でなりません。 メニュー画面のシーンに各クリップを反映させる事はできないのでしょうか?

  • FlashLiteでムービークリップをon(press)はできないのでしょうか?

    こんにちわ 現在FlashLiteを勉強しているのですが、on(press)イベントをボタンに記述する事はできるのですが、これをムービークリップに記述することはできないのでしょうか? というのも、僕がしたい事はあるムービークリップをpressしたらそのムービークリップが上下に大きくなるという動作を行わせたいのですが、、、 どのようにすればいいのかどなたかよろしくお願いいたします。

    • ベストアンサー
    • Flash
  • ムービークリップの制御について

    スクリプト初心者です。 ムービークリップの制御について、まったくわからず困っています (1)シーン1、5フレーム目にムービークリップ、インスタンス名a_mc配置 (2)a_mcの中にb_mc配置。b_mcをクリックすると→a_mcの1フレーム目に移動。もう1度b_mcクリックすると→a_mcの10フレーム目に移動。もう1度b_mcをクリックすると→a_mcの1フレーム目に移動・・・と、 b_mcをクリックするごとにa_mcの1フレーム目、10フレーム目、1フレーム目・・繰り返す制御をしたいのですが。。 どなたか分かる方いましたら 教えてください!!

  • ムービークリップの制御

    ムービークリップの制御に関してですが・・ 組み込んだムービークリップを、メインフレームから制御したいと思っています。 任意の位置で停止させたいのですが、gotoandstopでは、そのフレームまでジャンプしてしまいます。 「任意のフレームまで再生する」、といった制御はできないでしょうか? mc内に、if文にてstopを組み込む方法では、一回目の再生で停止せず、二回目の再生で止まる・・といった現象に悩んでいる為、メインフレームから停止フレームが指定できるような制御があればいいのですが・・ お手数ですが、良い方法をご存知の方がおられましたらお願いいたします。

  • ムービークリップの自動切り替え方法

    久しぶりにFLASHを触った初心者です。 シーン1の1フレにムービークリップを配置し、その1フレのムービー(10秒程度)が終わったらシーン2の2フレに配置したムービークリップが自動再生されるようなアクションスクリプトを考えています。例えばムービークリップの最後にgotoAndPlay(); など入れたりと試してみましたがうまくいかず困っています。 どなたか良い方法が無いか教えてください。 ※現在AS2.0を使って作成しています。