ゲームのオプション メニューを作成しています。サウンド エフェクトと音楽のミュート ボタンがあります。音楽のミュート ボタンをオンにすると、ゲーム全体ですべての音楽がミュートされます。効果音のミュート ボタンをオンにすると、すべての効果音をミュートする必要があります。両方をチェックすることも、1 つだけをチェックすることもできます。一方がチェックされている場合、もう一方は機能するはずです。SoundMixer.stopAll() 関数を使用できることはわかっていますが、これは実際に探しているものではありません。このコードを作成する方法を教えてください。
質問する
295 次
1 に答える
1
特定のSoundChannelでそれぞれ異なる効果音/音楽の再生を処理するSoundManagerクラスを作成し、それらのSoundChannelを任意の基準でグループ化できます。
このSoundManagerには、チェック/設定できるグループのミュート状態もあります。
そのミュート状態をチェックして、実際にそのサウンド/音楽を再生する必要があるかどうかを判断する playSound メソッドを持つことができます。
したがって、基本的な概念は、すべてのオーディオがこのクラスを通じてトリガーされるということです。サウンド エフェクトのミュート状態が true に変更されると、現在再生中のすべてのサウンド エフェクトが停止します。
オーディオをグループ化する方法はあなた次第です。各タイプを配列に格納できるため、ミュートがオンになっている場合は、それを反復処理してそのタイプのすべてのサウンドを停止できます。
于 2013-11-09T05:17:16.403 に答える