Форум 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)
-   -   Изменить звук в обратном направлении (http://www.flasher.ru/forum/showthread.php?t=125686)

Kalabania 29.05.2009 22:21

Изменить звук в обратном направлении
 
Есть код звука флешка запускаться он играет не могу сделать, что бы было наоборот звук был выключен а при нажатии включался:
Код:

Stage.scaleMode = "noScale";
//
_root.offSound_mc.gotoAndStop(1);
//Создаём звук, подключаем к нему .mp3 файл из библиотеки, делаем, чтобы
//трек постоянно повторялся
_lockroot=true;
var s_sound:Sound = new Sound(this);
//_root.s_sound.attachSound("music");
_root.s_sound.start(0, 0);
_root.s_sound.onSoundComplete = function() {
        this.start(0, 0);
};
//Создаём событие на нажатие на кнопку
offSound_mc.onRelease = function() {
        //Удаляем предыдущий интервал, который повторял функцию, отвечающую за
        //плавное уменьшение или увеличение громкости (см. ниже)
        clearInterval(_root.sound_int);
        //Проверяем, если громкость звука меньше 100, то запускаем функцию,
        //которая будет постепенно увеличивать громкость звука
        if (_root.s_sound.getVolume()<100) {
                //Запускаем саму функцию, где _root.soundOn_func - имя функции,
                //50 - число время в миллесекундах, через которое периодически будет
                //повторяться функуия. 10 - число, на которое за раз измениться
                //громкость звука, т.е. если в предыдущий раз громкость была равна 50,
                //то при запуске функции _root.soundOn_func она станет равна 60
                _root.sound_int = setInterval(_root.soundOn_func, 50, 10);
                //Переходим на кадр, где будет надпись ВКЛ.
                this.gotoAndStop(1);
        } else {
                //Если громкость звука равна или больше 100 (100 - максимальное
                //значение), то запускаем функцию ,которая будет постепенно уменьшать
                //громкость.
                _root.sound_int = setInterval(_root.soundOff_func, 50, 10);
                //Переходим на второй кадр, где будет надпись ВЫКЛ.
                this.gotoAndStop(2);
        }
};
//Сами Функции
//Функция выключения
//varDelta - цифровое значение шага изменения громкости звука, проще говоря, на
//уменьшится или увеличится кгромкость звука при запуске функции.
//Обе функции будут продолжать повторяться до того момента, пока громкость
//не будет равна 100 или 0, для функций "включения" звука, и затухания
//соответственно.
function soundOff_func(varDelta:Number) {
        //setVolume(varNumber) - устанавливает урвоень громкости равный varNumber;
        //Уровень громкости у Sound объектов может быть установлен в пределах
        //от 0 до 100
        //getVolume() - возвращает текущий уровень громкости объекта
        _root.s_sound.setVolume(_root.s_sound.getVolume()-10);
        //Проверяем, если уровень громкости МЕНЬШЕ ЛИБО РАВЕН 0 (нулю), т.е.
        //звук полностью не слышен уже, то удаляем интервал, который повторял
        //функцию и устанавливаем уровень громкости звука на 0 (ноль), делаем это
        //потому, что в ходе уменьшения громкости, она (громкость) может уйти в
        //минусовое значение - то ли это баг флеша, то ли так было задумано
        //разработчиками, но при минусовом значении звук  продолжает быть слышен.
        //Таким образом  убирает громкость звука значение 0 - setVolume(0);
        if (_root.s_sound.getVolume()<=varDelta) {
                clearInterval(_root.sound_int);
                _root.s_sound.setVolume(0);
        }
}
function soundOn_func(varDelta:Number) {
        //Увеличиваем громкость на значение varDelta
        _root.s_sound.setVolume(_root.s_sound.getVolume()+varDelta);
        //Если громкость больше, либо равна 100 (максимальное значение), то
        //удаляем интервал и устанавливаем громкость на 100.
        if (_root.s_sound.getVolume()>=100) {
                clearInterval(_root.sound_int);
                _root.s_sound.setVolume(100);
        }
}


scarbo 29.05.2009 22:49

Kalabania, Вы мой пример чем смотрели?Я что, просто так там все руты поубирал??Зачем пишите так start(0,0)?Масло- масленое получается.
И уберите эти комменты гигантские, они уже больше сбивают, чем помогают понять код.


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

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