Ir para conteúdo

POWERED BY:

Arquivado

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

crestana

[Resolvido] mp3 reproduzir aleatóriamente, como?

Recommended Posts

Olá Pessoal !!!

 

estou usando um arquivo .fla com um mp3 player (simples) controlado por um .as , o problema é que ele sempre toca da primeira para a última faixa , eu gostaria de por uma sequencia aleatória como faço??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Berseck !!!

 

Obrigado !!!

 

Mas como eu ponho mesmo?tenho aqui a parte do .as que reproduz aonde eu ponho ?

// Play the MP3 File
function playSong():Void
{
	s = new Sound();
	s.onSoundComplete = playSong;
	s.setVolume(75);
	mute.gotoAndStop("on");
	if(cps == sa.length - 1)
	{
		cps = 0;
		s.loadSound(sa[cps].earl, true);
	}
	else
	{
		s.loadSound(sa[++cps].earl, true);
	}
	trackInfo.text = sa[cps].artist + " - " + sa[cps].track;
	playPause.gotoAndStop("pause");
	textPos = 0;
}

 

 

 

me desculpe mas sou muito verdinho nessa história

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais uma vez obrigado !!!

 

Última pergunta ....substituo as duas entradas pelo seu código ou acrescento ??

 

sorry,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Substitui né...

 

Afinal se quer que ele faça randomico.

Mas tu deveria ter testado antes de pergunta né :P

 

Mas como pergunta não ofende rs...

 

O unico problema que você pode vir a ter com isso ai... é a musica se repetir em sequencia :)

Ai vai ser meio chato...

 

Ai tu teria que fazer um códigozinho que verifica se a musica já foi tocada oou não... se já foi tocada passa para faz random denovo e assim vai...

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas como pergunta não ofende rs...

 

... repetir em sequencia vai ser meio chato ... :)

 

 

Ai tu teria que fazer um códigozinho que verifica se já foi ... oou não... se já foi ... passa para faz random denovo e assim vai...

 

Abraços

 

 

Entaosis... (já que não ofende)

 

:D ... aproveitando a deixa, to precisando disso para imagens randômicas (um slideshow bacana ;) ), coisa de principiante mesmo, sabe como é né.

 

Um toquezinho vai bem (testo sem reclamar). A lógica serve para as 2 situações, bem melhor sem repetição de imagens/som.

 

 

 

Abs :P

Compartilhar este post


Link para o post
Compartilhar em outros sites

Master .... eu por acaso testei e não funcionou por isso perguntei , achei que eu tinha feito algo errado...

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Elektra

Desculpe mas poderia criar um novo tópico com sua pergunta mais especifica?

Não vamos desviar o assunto por favor.

 

@crestana

s.loadSound(sa[Math.random()*sa.length-1].earl, true);

 

Antes esse seu código tava fazendo com cps

s.loadSound(sa[0].earl, true); depois 1 depois 2... e assim por diante ali dentro do sa

 

O que eu fiz foi colocar um Math.random

 

O problema do Math.random é que ele não vem com números redondos e por isso ele vai dar um valor aleatório entre 0 e 10... podendo ser 1 como podendo ser 2.364342 e ai obviamente não vai tocar a sua música.

 

O que você pode fazer por ser action script 2 é usar random(sa.length-1) que seria a mesma coisa que fazer Math.round(Math.random()*sa.length-1) que ai sim vai lhe dar um numero arredondado de 0 ao limite da array sa - 1

 

Então você tem que fazer 1 das duas opções:

s.loadSound(sa[Math.round(Math.random()*sa.length-1)].earl, true);
ou

s.loadSound(sa[random(sa.length-1)].earl, true);

 

Lembre que eu to aqui para ensinar como fazer, nem sempre o código vai ser 100% a resposta, porque se não você não aprende...

 

Como será que eu descobri que Math.random() não retorna numero redondo??? foi lendo

Assim como testando também e usando muuuuuuuito e muito trace("teste") em minhas funções para ver o que acontece.

 

trace() = ao print ou echo do php ou melhor seria um var_dump que serve para que você veja o que tem dentro da variavel printando no output do flash e não dentro do código mesmo como faz o print ou o echo

 

Da uma testada ai nos códigos.

 

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

@ berseck

 

Bem tranquilo, ontem à noite eu estava estudando o método Math, o comentário que você fez para o tópico do colega já me deu uma idéia, vou tentar aqui, quando necessário abro um novo tópico.

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Berseck !!

 

naquela duvida do math.random a coisa funcionou direito , o único problema é que perdi a informação de cada música que antes o com o cps mostrava...

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.