Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Метод Sound.setVolume - убрать глобальное действие на все звуки (http://www.flasher.ru/forum/showthread.php?t=123847)

Psycho Tiger 11.04.2009 22:11

Метод Sound.setVolume - убрать глобальное действие на все звуки
 
Собственно, есть в игре музыка, есть в игре звуки.
Надо разделить их громкость.
Код AS1/AS2:

/**
* ...
* @author FluFme
        http://www.flufme.ru
*/

 
class SoundMaster extends Sound
{
        private static var music:Sound;
        public static function addSound(id:String):Void {
                var snd:Sound = new Sound();
                snd.attachSound(id)
                snd.setVolume(Main.soundVolume);
                snd.start();
        }
 
        public static function musicOn():Void {
                if (music) {
                        music.stop();
                        delete music;
                }
                music = new Sound();
                music.attachSound("bgm");
                updateVolume();
                music.start();
        }
 
        public static function musicOff():Void {
                music.stop();
                delete music;
        }
 
        public static function updateVolume():Void {
                music.setVolume(Main.musicVolume);
        }
 
}

Делаю SoundMaster.musicOn(), работает отлично, но при SoundMaster.addSound(...) - громкость музыки (храниться в переменной music) вдруг становиться громкостью последнего созданого Sound`а, то есть звуки как будто проходят через аналог SoundBuffer`а из AS3.
Как сделать так, чтобы звуки были не зависимы друг от друга? (или хотя бы 2 потока звуков - для музыки и для звуков)

alecsisk 12.04.2009 00:31

Цитата из хелпа: Если Вы не указали, с каким мувиклипом должен быть связан объект Sound, он воздействует на все звуки в ролике.

З.Ы. а зачем "extends Sound" ?

Psycho Tiger 12.04.2009 00:52

Ну да, в этом куске "extends Sound" лишний. В полной версии моего класса он нужен. Хотя, если с мувиклипами работать надо, придеться переписать и он воистину будет лишний.
Спасибо. )


Часовой пояс GMT +4, время: 05:00.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.