Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Плавно гасим звук (http://www.flasher.ru/forum/showthread.php?t=32429)

Mr.Brownstone 31.05.2002 16:00

Плавно гасим звук
 
Хочу сделать музыку на узле. Две кнопки: "play" и "stop" + attachSound. Особенность задачи в том, что при нажатии кнопки "стоп" хочу, чтоб музыка останавливалась не резко, а постепенно уходил звук.
Код в слое "актионз"
music = new Sound();
music.attachSound("muzika");
music.start(0, 999);
var isPlaying = true;

Код на кнопке "стоп":
on (release) {
music.stop();
isPlaying = false;
}

Код на кнопке "плай":
on (release) {
if (isPlaying == false) {
music.start(0, 999);
isPlaying = true;
}
}

Как завязать глушение звука со временем я не знаю. Подскажите пожалуйста.

Papa Karlo 31.05.2002 16:54

mySound.setVolume(volume);

Mr.Brownstone 03.06.2002 15:05

Это понятно. Но как сделать так, чтобы звук плавно затихал, до 0? Другими словами, как добиться эффекта постепенного выкручивания ручки громкости? То, что это при помощи СетВолум это я сам догадался. Проблема в том, что я не знаю, как изменять громкость с течением времени.
После нажатия кнопки "стоп" звук должен стихать в течение, скажем, секунды.

Baltika 03.06.2002 16:37

2 Mr.Brownstone
а зациклить не пробовал ?
;)

believe 03.06.2002 17:22

A как же любимые циклы с приращением переменной volume

SmeL_md 16.06.2002 08:22

Временную задержку можешь делать за счет фрэймиков. 1 фрэйм содержит основной скрипт, еще парочку пустых фрэймиков и еще один фрэймик который прыгает к 1 фрэймику. Где же здесь обрабатыватся время, а не где :). Проигрывание пустых фрэимов требует время :D

Nox Noctis 16.06.2002 13:22

Код на кнопке "стоп":
on (release) {
vol = somwhere.music.getVolume();
some_clip.onEnterFrame = function() {
if (vol) {
somwhere.music.setVolume(--vol);
} else {
some_clip.onEnterFrame = null;
somwhere.music.stop();
somwhere.isPlaying = false;
}
};
}

Код на кнопке "плей":
on (release) {
somwhere.music.start();
somwhere.music.setVolume(vol=0);
some_clip.onEnterFrame = function() {
if (vol<100) {
somwhere.music.setVolume(++vol);
} else {
some_clip.onEnterFrame = null;
somwhere.isPlaying = true;
}
};
}

Pietrovich 17.06.2002 02:03

или на МХ:

setInterval(volumeDowner(),500) - см. xелп
clearInterval() - когда волюмчик <= 0

:)


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

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