У меня есть эта проблема, когда я пытаюсь усилить звук с помощью функции ниже. Это просто не работает, и я не могу понять, где проблема.
Я хотел бы исчезнуть в петле, но ничего не происходит. Я ценю любую подсказку, которую могу получить, чтобы решить эту проблему Заранее спасибо.
используется для воспроизведения звука через события
dispatchEvent(new CustomEventSound(CustomEventSound.PLAY_SOUND, Main.SOUND_AMBIENT, false, true, false, 999999, 0, 0, setSoundVolume));
это функция воспроизведения звука. функция остановки практически идентична этой.
public function playSound(soundName:String, isSoundTrack:Boolean = false, fadeIn:Boolean = false, fadeOut:Boolean = false,
loops:int = 1, offset:Number = 0, volume:Number = 1):void {
if (fadeIn) {
tempSoundTransform.volume = 0;
} else {
tempSoundTransform.volume = volume;
}
tempSound = sounds[soundName];
if (isSoundTrack) {
if (soundTrackChannel != null) {
soundTrackChannel.stop();
}
soundTrackChannel = tempSound.play(offset, loops);
soundTrackChannel.soundTransform = tempSoundTransform;
if (fadeIn) {
for (var i:int = 0; i < fadeInInc; i++) {
tempSoundTransform.volume += 1 / fadeInInc;
soundTrackChannel.soundTransform = tempSoundTransform;
if (tempSoundTransform.volume >= 1) {
tempSoundTransform.volume = 1;
}
}
}
} else {
soundChannels[soundName] = tempSound.play(offset, loops);
soundChannels[soundName].soundTransform = tempSoundTransform;
if (fadeIn) {
for (var i:int = 0; i < fadeInInc; i++) {
tempSoundTransform.volume += 1/fadeInInc;
soundChannels[soundName].soundTransform = tempSoundTransform;
if (tempSoundTransform.volume >= 1) {
tempSoundTransform.volume = 1;
}
trace("tempSoundTransform.volume " + tempSoundTransform.volume);
}
}
}
}