外部SWFの読み込み時のサウンド制御について

このQ&Aのポイント
  • Main.swfから1~5.swfを順番に読み込み再生する方法について質問です。
  • 1~5.swfに設定したBGMを制御するためにMain.swfに「ON/OFFボタン」を設置したいです。
  • Main.swfに「ON/OFFボタン」を設置して、1~5.swfのサウンドを制御する方法を教えてください。
回答を見る
  • ベストアンサー

複数の外部SWFの読み込みする場合のサウンド制御について

1~5.swfが存在し、それらをMain.swfから読み込み順番に再生するようにしています。 Main.swfの1フレーム目に→ stop();_root.seen1.loadMovie("1.swf"); 1.swfの最後に→ _root.nextFrame(); Main.swfの1フレーム目に→ _root.seen2.loadMovie("2.swf"); 2.swfの最後に→ _root.nextFrame(); これを1~5まで同様に設定し5.swfが終わると1.swfが始まりループするように設定し問題なく動いています。 1~5.swfには、それぞれ異なるBGMを設定しています。 ココで質問なのですが、よくあるBGMの「ON/OFFボタン」を作成しサウンドを制御したいのです。 1.swfに「ON/OFFボタン」を作成して「OFF」を選んでも、次の2.swfではまた再生されてしまいますので、「ON/OFFボタン」はMain.swfに設置したいと考えています。 Main.swfに「ON/OFFボタン」を設置して、1~5.swfのサウンドを制御するう方法を教えて下さい。 宜しくお願いします。 補足が必要な場合は言って下さい。

  • kosa
  • お礼率14% (46/319)
  • Flash
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
noname#35109
noname#35109
回答No.1

どういう方法で音を鳴らしているのか などがわかりませんから, 具体的なスクリプトの回答はできません。 しかし, ボタンはどこにあっても良いと思います。 ボタンはどこにあっても良いので, _root(Main.swfのメインムービーのタイムライン) に, 勝手に自分で作った変数とその値を用意して, 音の ON OFF をすると同時に, その勝手に自分で作った変数とその値を切り替えてやればできると思います。 たとえば, 勝手に自分で作った変数の変数名を「sound_flag」 としておきます。 とりあえず_root の フレーム1 など最初に ----------------------------------- // 変数 sound_flag の初期値を設定(鳴る状態) _root.sound_flag = true; ----------------------------------- などと書いておきます。 (※場合によってはこれは書かない方が良いときもあります。) そして, 音の OFF ボタンをクリックしたときには, 音を消すと同時に, 変数 sound_flag の値を false にしてやります。 ------------------------------------ on (release) { /* ここに音を止めるスクリプトを書く */ // _root の sound_flag の値を false にする _root.sound_flag = false; } ------------------------------------ そして, 2.swf の音が鳴り始めるフレームに,次のように書きます。 ----------------------------------- // もし _root の sound_flag の値が true であれば if (!_root.sound_flag) { /* ここに音を鳴らすスクリプトを書く */ } ----------------------------------- もしくは, 音を鳴らすスクリプトなどは元から用意していなくて, 音をタイムラインに置いて自動的に鳴るようにしてあるのであれば, 音が鳴り出すフレームに次のように書いておきます。 ----------------------------------- // もし _root の sound_flag の値が false であれば if (!_root.sound_flag) { // 全ての音インスタンスを削除する stopAllSounds(); } ----------------------------------- とにかく, どうやって音を鳴らしているのかがわからないので, 具体的には回答できませんが, 他の部分も原理は同じです。 _root の勝手に決めた変数の値(フラグが立っているか立っていないか)によって, 音の鳴る鳴らないを操作すれば良いと思います。 QNo.1810860 「フラグをたてる」とは? http://oshiete1.goo.ne.jp/qa1810860.html  教えて!goo ↑同じです↓ OKWave http://okwave.jp/qa1810860.html

kosa
質問者

お礼

お礼が大変遅くなってしまいました。すみません

関連するQ&A

  • 外部swfのラベル移動

    FLASH MX2004で作成しています。 main.swf上のload_mcのレベル0に、外部swfのA.swfを読み込んでいます。 #main上のフレーム this.load_mc.loadMovie("A.swf", 0); A.swfが終わると同時に、main.swf上のload_mcのレベル1に、外部swfのB.swfを読み込みます。 #A.swfの最終フレーム stop(); _root.load_mc.loadMovie("B.swf", 1); ここまではできています。 その後、B.swf内のcontentsというMC内のラベルをlabel2に移動させたいのです。 #A.swfの最終フレーム stop(); _root.load_mc.loadMovie("B.swf", 1); _root.load_mc.contents.loadMovie("label2"); これができません。 _root.load_mc.contents.loadMovie("label2"); _root.contents.loadMovie("label2"); _root.load_mc.loadMovie("label2"); load_mc.contents.loadMovie("label2"); contents.loadMovie("label2"); なども試してみましたが、うまくいきません。 わたしの頭ではこれが限界です。 ぜひともお力お貸しください!

  • サウンドの制御で・・・

    初心者ですが、教えていただけると嬉しいです。 簡潔にいうと、サウンドを再読み込みしたときに音を鳴らさない仕組みにしたいのです。 私が作成したデータなのですが、 メインのページ(main.swf)があり、そこにメニューの項目(外部の各1.swf、2.swf、3.swfをムービークリップに読み込む用に設定)があります。 メニュー項目をクリックすると外部にあるSWFを読み込むムービークリップがおいてあるフレームに移動する方法になっています。 main.swfにのみONOFFボタンを作成し、最初にONの状態で 音を鳴らし、ループするようにしてあります。 MCの中にAiffサウンドをいれ、そのプロパティに同期イベント繰り返し999の設定をしています。 メインのページ(main.swf)のONOFFボタン制御はきちんとできているようで、OFFとしたときに、外部SWFページを読み込むフレームに移動したときも同じようにサウンドは止まった状態です。 しかし、ONにしたとき、外部SWFを読み込むフレームに移動したとき音がループしてなり続けているのですが、メインのページに頭からもどったときに、最初に鳴らした音も続いたまま二回目の音が重なって鳴ってしまうのです。 何度も繰り返すと二十三十とダブってしまうのです。 そのため、再度メインに戻ったときに音を読み込まない方法を教えていただきたいのです。 説明不足かもしれませんが、不明な箇所ありましたら補足いたします。 どうか宜しくお願い致します。

  • 外部swfのフレームを指定して読み込み

    あるムービークリップ(mc1とします)に外部swf(001.swfとします) を読み込むことはできるのですが、 mc1に001.swfを読み込み、001.swfの50フレーム目から再生ということは可能でしょうか。 いろいろと調べたのですが、どうしてもうまくいきませんでした。 ボタンを作りボタンを押したら読み込み50フレーム目から再生という指示を書いたのですが、、、 on (press) { _root.mc1.loadMovie("top.swf"); _root.mc1.gotoAndPlay(50); } 1フレーム目から再生されてしまいます。

  • loadMovieで外部swfの読込みについて

    現在、外部swfを連続で再生させるフラッシュを作成中です。 以下の方法で実現しています。 ------------------------------------------------- 親SWFの_rootに,例えば「loadMC」というインスタンス名のムービークリップを作ります。 このMCは小さくて透明のMCか,中に何も入っていない空のMCが良いと思います。 そして,親SWFのフレームのスクリプトに _root.loadMC.loadMovie("movie1.swf"); と書けば,「loadMC」というインスタンス名のムービークリップに「movie1.swf」が読み込まれます。 またはボタンにスクリプトを書いて,ボタンで読み込みをさせても良いです。 そして,「movie1.swf」の最終フレームに, _root.loadMC.loadMovie("movie2.swf"); と書いておきます。これで同じ「loadMC」に「movie2.swf」が読み込まれます。 同じ所に新たなムービーを読み込むと自動的に前のムービーは unload されるので, unloadMovie(); は必要ありません。 「movie2.swf」の最終フレームには _root.loadMC.loadMovie("movie3.swf"); 「movie3.swf」の最終フレームには _root.loadMC.loadMovie("movie4.swf");   …  … ------------------------------------------------- 作成後のプレビュー又はswfをダブルクリックなどで直接表示させると正常に表示されます。 しかし、HTMLに埋め込むと真っ白な状態でまったく表示されません。 調べているのですが原因がわかりません。 どなたかご教授のほど宜しくお願い致します。

    • ベストアンサー
    • Flash
  • 外部swfファイルの閉じ方

    メインに"stage2というmcを配置し、123.swfを読み込むボタンを配置しました。 ボタンスクリプト: on (release) { _root.construction(); loadMovie("123.swf", "_root.stage"); _root.stage.swapDepths(5); for (i=1; i<=4; i++) { _root["m_"+i]._visible = false; } 開いた外部swfファイルを閉じる設定をしたいのですが、どのようにすればよいでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • 複数のsoundを1つのon/offボタンで制御したい。

    どなたか助けてください! 1~200フレームまで(仮にパートAと呼びます)にサウンド1をループさせ、 201~400フレームまで(仮にパートBと呼びます)にサウンド2をループさせ、 それを1つのon/offボタンで制御しなければならない状況です。 例えば、100フレームあたりでsoundをoffをしたらサウンド1が消え、 300フレームあたりでsoundをonしたらサウンド2が聞こえる、というようにしたいのですが可能でしょうか? 1つのsoundの制御しかやったことが無いのでお手上げです。 助けてください。よろしくお願いします。

    • ベストアンサー
    • Flash
  • flashで、レベルの違うボタンから外部swfファイルの読み込み

    flash初心者のkiyuです。 メインのflashサイトに外部swfファイルを読み込みたいのですが、上手くいきません。 1.mcはrootにおいてあります。 2.ボタンは2つあり、1つはおなじrootの同じステージ内。そして、2つ目のボタンは違うレベルにあります。 3.同じrootにあるボタンは読み込み可能。でも、違うレベルにあるボタンは読み込み不可。 コードは、 on(release){ _root.gotoAndPlay("フレーム名"); _root.mcのインスタンス名.loadMovie("外部ファイル名.swf"); } です。 いろいろ思考錯誤をくりかえしたのですが、どうにも上手くいきません。。。 よろしくお願いします。

  • 外部swf(子swf)から、親swfの特定「シーン/フレーム」にリンクをしたい。

    アクションスクリプト初心者です。お力をお貸し下さい、どうぞよろしくお願いいたします。 「親swf」ファイルに、「子swf」ファイルを読み込み、「子swf」のリンクボタンから 「親swf」ファイルの指定「シーン/フレーム」にリンクをしたいのですが上手くいきません。 「親」ファイルのタイムライン上に配置した「ムービークリップ(インスタンス名:tv)」を 外部swf「子swf」に差し替えるスクリプトは ---------- loadMovie("子swf", "tv"); stop(); ---------- と、記述して上手く動いてますが、 「子swf」のリンクボタンから「親swf」の指定「シーン/フレーム」にリンクさせるにはどの様なスクリプトを書けば良いのか?アドバイスをお願いいたします。 ※「親swf」の指定「シーン/フレーム」とは、「子swf」を読み込む前の「シーン/フレーム」 に戻したいのです。 感覚として下記のようなスクリプトを書きましたが、「親swf」の最初のシーン/フレームに 戻ってしまいます。 リンクボタンに記述 ---------- on (release) { loadMovieNum("親swf", 0); _root.gotoAndPlay("指定シーン",フレーム番号); } ---------- どなたか詳しい方アドバイスよろしくお願いいたします。

    • ベストアンサー
    • Flash
  • 外部swfが作動しない

    FLASH8を使用してHPを作成しています。 index.flaの中の各ボタンに ---------------------------------------- on (release) { _root.space.loadMovie("a.swf"); } ---------------------------------------- このように指示したのですが、a.swfの中のボタンが作動しなかったり、txtファイルが読み込めなかったりします。 他のスクロールボタンは作動するのですが、何か設定がおかしいのでしょうか? 初心者なので、補足が必要ならばすぐお答えします。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • loadMovieのswf読み込み時の一瞬

    制作環境  windows vista flash CS3 Professional ------------------------- flash初心者です。 loadMovieで外部swfを読み込む前に一瞬_rootの画像が表示されてしまうことで困っています。 作業としては、 top.swfにメニューをつけ、リンクを貼って loadMovieでswfを切り替えています。 以下3つは読み込む外部ファイルです。 ・about.swf ・catalog.swf ・service.swf top.swfに配置したメニューボタン(about、catalog、service)に下記の記述をし、 ■aboutボタン on (release) { _root.moviearea.loadMovie("about.swf"); } ■catalogボタン on (release) { _root.moviearea.loadMovie("catalog.swf"); } ■serviceボタン on (release) { _root.moviearea.loadMovie("service.swf"); } ボタンを押すと_rootにそれぞれちゃんと読み込まれるまではいきました。ですがその際、例えばabout.swfが読み込まれた後に他のボタンを押して別のswfファイルを読み込む一瞬、_rootに配置してある画像がちらっと表示されてしまいます。 色々調べて外部swfファイルの背景の問題かもしれないと思い、ドキュメントサイズと同じサイズの背景色で塗りつぶしたムービークリップを配置するなどしてみましたが、やはり一瞬ですが_rootの画像が見えてしまいました。 外部ファイルから外部ファイルへスムーズに切り替えができるようにするにはどのようにしたらよいのでしょうか。 どなたかお力をお貸しくださいませんか? よろしくお願いします。

    • ベストアンサー
    • Flash

専門家に質問してみよう