Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [flash, action script] player muzyczny
Forum PHP.pl > Forum > Po stronie przeglądarki
llukasz
Witam!
Mam następujący problem: chcę przyciszyć płynnie lub nie, już wszystko mi jedno dany utwór i uruchomić następny, mam je odpalone przez Action Script w trzech MC, korzystam z tego skryptu:

Kod
Sound.prototype.fadeIn = function (updateTime){
   this._sndObj != undefined ? (clearInterval(this._sndObj), delete this._sndObj) : null;
   this._sndObj = setInterval(function () {
      var volume=arguments[0].getVolume();
      volume < 100 ? arguments[0].setVolume(volume+1) : (clearInterval(arguments[0]._sndObj), delete arguments[0]._sndObj);
   },updateTime,this);
}


Sound.prototype.fadeOut = function (updateTime){
   this._sndObj != undefined ? (clearInterval(this._sndObj), delete this._sndObj) : null;
   this._sndObj= setInterval(function () {
      var volume=arguments[0].getVolume();
      volume > 0 ? arguments[0].setVolume(volume-1) : (clearInterval(arguments[0]._sndObj), delete arguments[0]._sndObj);
   }, updateTime,this);
}
ASSetPropFlags(Sound.prototype,["fadeIn","fadeOut"],1);


problem w tym, że zarówno ten kod, jak i zwykle setVolume działa tylko na jeden element jednocześnie - gdy chcę wykonać dwie czynności, jeden dźwięk wywalić w kosmos, a drugi odpalić, to efekt jest taki, że nic się nie dzieje, przy wyłączeniu/włączeniu jednego w sposób płynny powyższym skryptem jest OK, próbowałem nawet go do każdego MC wrzucić i nazwać inaczej wywołując inne funkcje, ale nic, tak jakby się nie dało kompletnie dwóch czynności na dźwiękach na raz wykonywać, serdecznie proszę o możliwie szybką pomoc, gdyż sprawa jest dosyć pilna...

pozdrawiam
jarrod
Wygląda na to że jedną funkcją robisz fadeout a drugą fadein ale dla dźwięku systemowego a nie dla odtwarzanych plików. Sound działa na WYJŚCIE a nie na utwór więc tego tak nie zrobisz. Niestety nie znam się na tyle na fleszu aby to zrobić.
llukasz
tak, ale te dźwięki są stworzone w AS, nazywają się inaczej (s1, s2, s3) s1.setVolume nie powinno zmienić głośności danego dźwięku? - bo to co mówisz to chyba prawda, bo taki właśnie efekt zaobserwowałem, tj. np. uruchomiłem dwa dźwięki, przyciszyłem jeden, a tu przyciszały się dwa, zaś przy dwóch funkcjach nie działo się nic (fadeout i fadein wyzerowało się) - jednak to dziwne, przecież setVolume przypisałem danemu dźwiękowi, z tego wynika, że muszę podszkolić się bardziej w Action Script - jeśli ktoś ma pomysł jak rozwiązać problem to proszę o pomoc, bo na forum flashzone niestety nikt nie odpowiada - pewnie wszyscy na wakacjach tongue.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.