actionscript-3 - 只关闭声音 - 如何?

标签 actionscript-3 audio volume

我有这个问题:

如何只在游戏中关闭声音?我问是因为我的设置中有两个按钮:打开/关闭音乐和打开/关闭声音。打开和关闭音乐非常容易,因为它使用特定的声道。但是你如何只关闭声音的音量(例如,音乐仍在播放,但没有游戏的声音)?

当我通过 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;

}

}

最佳答案

我认为这样做更容易:

var soundsON = true;

然后在播放任何音效之前,请确保声音已打开,如下所示:
if (soundsON) {
 mySound.play();
}

如果您设置静音按钮,请执行 soundsON = false; ,您的音效将不会播放。

关于actionscript-3 - 只关闭声音 - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7867672/

相关文章:

flash - (Flash CS5.5) 基本 Away3D 设置帮助

actionscript-3 - 使用 Flex SDK 将 ActionScript 编译成 SWF

python - 连接不同频率的正弦曲线

c++ - 将音频从 44100 上采样到 96000 Hz 和线性插值

ios - 隐藏音量 HUD(避免使用加载 View )

actionscript-3 - AS3 NetStream AppendBytes寻求问题

actionscript-3 - 如何获得缩放的高度和宽度?

audio - FFMPEG - 在流 #0 中找不到编解码器 pcm_s16le 的标记,容器中当前不支持编解码器

ios - 如何控制/强制 iOS 系统音量 [cordova]

java - Android 音频标准化或调平