我正在为我的游戏创建一个选项菜单,其中有一个用于音效和音乐的静音按钮。当检查音乐的静音按钮时,所有音乐都应在整个游戏中静音。当检查声音效果的静音按钮时,所有声音效果均应静音。两者都可以检查,或者只能检查一个。如果一个被选中,那么另一个应该工作。我知道我可以使用 SoundMixer.stopAll() 函数,但这并不是我真正想要的。您能否帮助我如何构建此代码?
问问题
295 次
1 回答
1
您可以创建一个 SoundManager 类来处理在给定 SoundChannel 上播放不同的音效/音乐,然后根据您拥有的任何标准对这些 SoundChannel 进行分组。
这个 SoundManager 还可以为您拥有的任何组设置静音状态,您可以检查/设置。
您可以有一个 playSound 方法来检查静音状态以确定它是否应该实际播放该声音/音乐。
所以基本概念是所有音频都通过这个类触发。如果音效的静音状态更改为真,那么它将停止当前播放的所有音效。
如何对音频进行分组取决于您。您可以将每种类型存储在一个数组中,因此如果打开静音,您可以遍历它以停止该类型的所有声音。
于 2013-11-09T05:17:16.403 回答