Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

jocamo

[Resolvido] Classe Sound

Recommended Posts

Sou iniciante em Flash ,tenho o CS3 e estou com um problema.

Vi este tuto do Julio Henrique( http://imasters.com.br/artigo/5850/flash/classe_sound_detalhada/#acoment )

e coloquei apenas um botão Play e um Pause.

E coloquei a AS no frame.

Tudo funciona perfeitamente apenas a trilha quando chega ao final ...pára.

Não retorna e eu coloquei na AS do botão PLAY>>>>>

 

som.start(0,99);

Ou seja loop de 99 vezes.

 

Na action do frame eu coloquei "true" , para que a trilha iniciasse sozinha:>>>

 

som = new Sound();

som.loadSound("Seq1.mp3",true);

som.start(0,99);

 

Sewrá que não falta algo nesta Action do Frame para o som rodar em loop?

Porqueroda só uma vez se está 99(loop)?????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu normalmente coloco vinculado a uma função a chamada do som

 

E coloca no evento sound.onSoundComplete = init();

 

Onde init é onde faz o load da musica ;)

 

Assim fica em loop eterno

Exemplo:

var s:Sound = new Sound();
function init(){
s.loadSound('meump3.mp3', true);
s.onSoundComplete = init(); // ou init... mas eu deixaria com o ()
}

init();

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Berseck, mas como disse sou iniciante.

Daria para exemplificar melhor onde coloco seu exemplo...no frame , no botão???

Copiei o exemplo do link, justamente por não saber fazer uma trilha rodar em loop e com 2 botões(PLAY/PAUSE)

Como disse, consegui fazer igual apenas não fica em loop. Quando a m´sudica chega ao fim ela não recomeça.

Preciso resolver só isso.

Mas obrigado pela atenção.

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse código ai deve ser colocado no frame

E não no botão

 

Se quiser pode colocar no botão para iniciar

on(press){

init();

}

 

Mas o correto seria instanciar o botão

E colocar o código que eu passei ai colocar

 

instancia.onPress = function(){ init(); };

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou botando isto no frame:

 

 

 

var s:Sound = new Sound();

function init() {

s.loadSound('trilha.mp3',true);

s.onSoundComplete = init();

}

init();

 

 

Mas acho que falta o parametro > initO que coloco como parameters?

 

Cara sou novato , desculpa ae...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não cara não precisa de parametro nenhum.

 

Se isso ai é ActionScript 2.0 você pode chamar as funções assim que elas devem funcionar perfeitamente bem...

 

Ta vamos melhorar o exemplo que acho que não fui muito feliz no exemplo acima... que era só uma ideia de como fazer sem testar...

function loadSound(){
        som = new Sound();
        som.loadSound("song.mp3", true)
        som.play();
        som.onSoundComplete = loadSound;
}
loadSound();

Esse funciona perfeitamente bem!

 

Pode testar

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.