※ ChatGPTを利用し、要約された質問です(原文:stopAllSound()の実行順番を変える方法)
stopAllSound()の実行順番を変える方法
このQ&Aのポイント
外部SWF内のフレームに組み込んだイベントサウンドがなっている状態で、_rootのフレームアクションにてstopAllSound()を使用した場合、すべてのサウンドがストップされます。
フレームに組み込んだイベントサウンドをSound Objectに変えずに、このままの方法で意図した動作をさせるにはどうすればよいでしょうか。
stopAllSound()の実行順番を変えることで、イベントサウンドを停止させた後にSound Objectをfunctionにてstart()することができます。
stopAllSound()の実行順番を変える方法
環境=Flash8,WinXPでオーサリングしています。
質問です。
外部SWF内のフレームに組み込んだイベントサウンドがなっている状態で、
_rootのフレームアクションにて
_global.bgm_sound2_start=function (){
bgm_sound2 = new Sound();
bgm_sound2.attachSound("bgm_sound2.wav");
bgm_sound2.start();
}
を記載。
_root.mc1.mc2のフレームアクションで
stopAllSound();
_global.bgm_sound2_start();
を記載。(*イベントサウンドを停止させてから、sound objectをfunction にてstart()させたい)
この場合に限らずですが、
個別にSound Objectを操作しないで
stopAllSound()を使用した場合、
stopAllSound()の記載位置にかかわらず、
スクリプト内の時間的前後が無視され
スクリプト内のどこでもすべてのサウンドがストップされます。*トップレベルfunctionのため。
フレームに組み込んだイベントサウンドを
Sound Objectに変えずに
このままの方法で意図した動作をさせるには
どうすればよいでしょうか?
どうぞ宜しくお願い致します。
お礼
お返事有難う御座います。 stopAllSounds()は、そのすぐ後の行に sound Objectを生成しても、それすら削除してしまうみたいです。 でも、これでスッキリしました。 有難う御座います。 教えていただいた方法も正常に動作致しました。 MCを増やさずにスクリプトのみでと考えていましたが、この方法以外選択肢がなさそうですね。 動作検証などをせずに質問する方が多いですから 疑われても仕方の無いことだと思いました。 また、今回もご迷惑をかけてしまいましたが、 質問する側がきちんと詳細を明記しない事が 原因だと考えていますので、反省し以後気をつけますので、どうぞお許し下さいませ。 この度もご教授のおかげですべて解決出来ました。 本当に有難う御座いました。