Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Постоянное проигрывание музыки (http://www.flasher.ru/forum/showthread.php?t=150026)

TEI 04.02.2011 23:50

Постоянное проигрывание музыки
 
Запутался в Sound....

У меня есть музыка, которая должна начинать проигрываться опять, когда закончилась.
Для начала я ее вызываю
Код AS3:

var zvuk_z:Sound=new muz();
var zvuk_c:SoundChannel=zvuk_z.play();


В as2 я мог просто проверить позицию с продолжительностью. А как поступить здесь не пойму
Код AS1/AS2:

 if (zvuk3.position == zvuk3.duration) {


КорДум 04.02.2011 23:53

http://help.adobe.com/ru_RU/AS3LCR/F...:soundComplete

mikhailk 05.02.2011 00:37

а я просто запускаю 9999 раз.
ни один пользователь не жаловался пока :D

NikosHope 05.02.2011 18:06

Вот пример зацикленного воспроизведения трека:
Код AS3:

public var channel:SoundChannel;
public var snd:Sound;
 
...
 
snd = new track();
channel = snd.play();
channel.addEventListener(Event.SOUND_COMPLETE, function(){
        channel = snd.play();
});


КорДум 05.02.2011 18:51

NikosHope, плохой пример.

NikosHope 05.02.2011 21:16

Цитата:

Сообщение от КорДум (Сообщение 970689)
NikosHope, плохой пример.

Чем он плох? Какие есть более оптимальные альтернативы?

КорДум 05.02.2011 21:20

В вашем примере вы не сможете отписаться.
Код AS3:

channel.addEventListener(Event.SOUND_COMPLETE, repeatSound);
...
private function repeatSound(e:Event):void {
    channel = snd.play();
}


TEI 08.02.2011 14:27

Этот пример работает... Но по непонятным мне причинам иногда возникают сбои и музыка после завершения не проигрывается снова. В чем может быть причина?

cleptoman 08.02.2011 15:15

потому что
channel = snd.play();

создает новый экземпляр саунд ченнела и его каждый раз нужно подписывать на комплит.

п.с. в АС2, насколько помню, был колбэк на окончание саунда


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

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