Conectar-se
Quem está conectado
16 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 16 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 07/11/2009
Número de Mensagens : 312
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 1
   : 1
   : 0
Ver perfil do usuário

Tocar música quando outra música acaba

em Sex 11 Dez 2009, 18:09
Oi pessoal!!!
Estou precisando de ajuda com o som.

tenho um objeto que carrega música de uma pasta, acontece que eu quero que quando uma música acabar, tocar uma outa automaticamente.

pode ser também assim... o resto eu me viro....
quando a música acabar, aguma coisa acontece!!!

grato
Convidad
Convidado

Re: Tocar música quando outra música acaba

em Sab 12 Dez 2009, 04:24
Tem uma função que checa se o som está tocando. É a sound_isplaying(id_som). Ao invés de tocar os sons com sound_loop(), você deve usar o sound_play() e checar se ele terminou com a função sound_isplaying().

O sound_loop() toca o som continuamente, certo? Então se você checar se ele está tocando com sound_isplaying, a função sempre vai retornar positivo. É por isso que você vai ter que usar o sound_play(), que toca o som até que ele termine.

Basicamente, acho que isso vai funcionar:

if not sound_isplaying(nome_do_som) then {coloque aqui o que quer}

Eu não testei, mas pessoalmente, eu colocaria um array pra checar se o som atual terminou e já tocar o próximo sem ter que ficar atribuindo nomes. Supondo que a gente tenha uma variável que guarde o index do último som reproduzido, ficaria assim:

Código:
// Onde "Atual" é a variável.

if not sound_isplaying(som[Atual]) then
begin
    Atual += 1;
    sound_play(som[Atual])
end;
avatar
Data de inscrição : 07/11/2009
Número de Mensagens : 312
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 1
   : 1
   : 0
Ver perfil do usuário

Re: Tocar música quando outra música acaba

em Sab 12 Dez 2009, 14:02
com sound_isplaying eu ja tinha testado fora do jogo, mas não dava certo para o que eu quero fazer..... vou testar sua dica pra ve se dá!!!

é bem parecido com isso:

tenho uma pasta com 20 musicas mid

no create:
Código:

var (som)=ceil(random(20))
alarm[0]=10;

alarme[0]
Código:

if(som==11)
{
global.musica11=sound_add('.\sons\musica\musica11.mid',0,0)
sound_play(global.musica11)
}

oq que eu quero é;
(quando a musica11 acabar)
Código:

som=ceil(random(20));
alarm[0]=10;

dessa forma teria um loop, com musicas diferentes.
nesse caso o teste de som ficaria onde???
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum