プロが教える店舗&オフィスのセキュリティ対策術

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のサウンドを制御するう方法を教えて下さい。
宜しくお願いします。 補足が必要な場合は言って下さい。

A 回答 (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
    • good
    • 0
この回答へのお礼

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

お礼日時:2007/06/12 14:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!