我想让音乐始终播放,并且能够将不同的部分静音。这是一个项目,你点击不同的人,他们来生活播放音乐。停止和玩耍不会让他们陷入困境。我没有使用动作脚本长
var my_sound:Sound = new Sound(); my_sound.load(new URLRequest("triumphant.mp3" ) ); function 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) function toggleMuteBtn(event:Event) { if (Mute) { Mute = false; setMute(1); } else{ Mute = true; setMute(0 ); } }
答案 0 :(得分:5)
您应该将每个声音分配到不同的频道。每个频道都有自己的音量和平移变换。
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);