PDA

Просмотр полной версии : Плавно гасим звук


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

:)