我有这个问题:
如何仅在游戏中关闭声音?我问,因为我的设置中有两个按钮:打开/关闭音乐和打开/关闭声音。打开和关闭音乐非常简单,因为它使用特定的声道。但是你如何仅关闭音量音量(例如音乐仍在播放而不是游戏的声音)?
当我通过SoundMixer.soundtransform静音时你听不到任何声音,所以这不是我想要的。在我的游戏中,所有声音都被抛入阵列。我的第一个想法是,我通过阵列中列出的所有声音并关闭音量,但这不起作用。请 - 有人可以帮忙吗?非常感谢你。
//not working
private var sounds:Array;
private var soundChannels:Array = [];
private var muteSoundTransform:SoundTransform = new SoundTransform();
public function muteSoundOnly():void {
muteSoundTransform.volume = 0;
var soundLength:int = soundChannels.length - 1;
for (var soundCtr:int = soundLength; soundCtr >= 0; soundCtr--)
{
soundChannels[soundCtr].soundTransform = muteSoundTransform;
}
}
答案 0 :(得分:0)
我认为这样做更容易:
var soundsON = true;
然后在播放任何音效之前,请确保声音为ON,如下所示:
if (soundsON) {
mySound.play();
}
如果您使用静音按钮soundsON = false;
,则不会播放您的声音效果。