问题描述
|
我想让音乐一直在播放,并且能够使不同部分静音。这是一个项目,您单击不同的人,他们就会栩栩如生地播放音乐。停下来玩不会在snyc中出现。我没有长时间使用动作脚本
var my_sound:Sound = new Sound();
my_sound.load(new URLRequest(\“ triumphant.mp3 \”));
函数setMute(vol){
var sTransform:SoundTransform = new SoundTransform(0);
sTransform.volume = vol;
Soundmixer.soundTransform = sTransform;
}
my_sound.play();
setMute(0)
// 2。
// 3。
var Mute:Boolean = true;
play_btn.addEventListener(MouseEvent.CLICK,toggleMuteBtn)
函数toggleMuteBtn(event:Event){
如果(静音){
静音=假;
setMute(1);
}
else {静音= true; setMute(0);
}
}
解决方法
您应该将每种声音分配到不同的声道。每个通道都有自己的音量和平移转换。
SoundMixer.soundTranform用于全局声音。
var _bassSound:Sound = new Sound();
_bassSound.load(new URLRequest(\"you_mp3.mp3\"));
var _bassChannel:SoundChannel = _bassSound.play();
_bassChannel.soundTranform = new SoundTranform(1,0);
那么你可以像这样使静音功能
function setVolume (soundChannel:SoundChannel,volume:Number=0) {
var transform:SoundTransform = soundChannel.soundTransform;
transform.volume = volume;
soundChannel.soundTransform = transform;
}
// so you call it like this
setVolume(_bassChannel);
// or if you want to unmute
setVolume(_bassChannel,1);