Saber o tempo em que a musica se encontra??

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Saber o tempo em que a musica se encontra??

Mensagem por evocatistudio em Seg 20 Maio 2013, 16:13

Fala galera,

Gostaria de sabe se existe alguma função no game maker studio que retorne o tempo em que a musica esta??

ex: a musica começa a tocar e eu quero que ela pare quando chegar em 20 segundos

evocatistudio

Ranking : Nota A
Número de Mensagens : 21
Data de inscrição : 30/04/2013
Notas recebidas : A
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.bluemonster.com.br/

Voltar ao Topo Ir em baixo

Re: Saber o tempo em que a musica se encontra??

Mensagem por Brother27 em Seg 20 Maio 2013, 16:47

Bom, não sei se funciona...

Mas acho que você pode fazer assim:
Multiplique o tempo em segundos da música pela room_speed.
Vamos supor: 30 steps = 1 segundo (room_speed de 30)... Você quer 20 segundos...
20*30=600, guarde esse número

Crie uma variável, sei lá, musica_tempo e acrescente 1 a cada step.
Quando a variável chegar a 600 (confira com if musica_tempo=600), pare a música (esqueci a função =/ mas acho que é algo parecido com sound_stop)

Espero ter ajudado

OFF: essa é a minha mensagem número 100 õ/

Brother27

Ranking : Nota C
Número de Mensagens : 253
Idade : 17
Data de inscrição : 28/06/2012
Notas recebidas : C
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Saber o tempo em que a musica se encontra??

Mensagem por GameMakerTutoriais em Ter 28 Maio 2013, 23:08


Gostaria de sabe se existe alguma função no game maker studio que retorne o tempo em que a musica esta??

ex: a musica começa a tocar e eu quero que ela pare quando chegar em 20 segundos

Você pode controlar isso usando o MCI do Windows através da função MCI_command do Game Maker. Não é necessário verificar o tempo da música, pois basta pedir ao MCI que reproduza do ponto A ao B com repetição. Mas, nesse caso, você é obrigado a usar um arquivo de música externo.

Ao abrir o arquivo, é necessário definir um alias para ele, que é como se fosse um "nome" que o controle de multimídia vai usar para identificá-lo quando fizer as chamadas. Usando vários "nomes" pra cada um, você pode abrir mais de um som ao mesmo tempo ou fazer operações diferentes no MCI.

Por exemplo:

Código:
arquivo := get_open_filename('mp3|*.mp3', '');
MCI_command('open "' + arquivo + '" alias gmsong');
MCI_command('play gmsong from 10000'); // Reproduz a partir dos 10 segundos

Reproduz da posição 10 segundos aos 30 segundos e repete:
Código:
MCI_command('play gmsong from 10000 to 30000 repeat');

Move a posição para 5 segundos, mas pausa:
Código:
MCI_command('seek gmsong to 5000');

Para a reprodução:
Código:
MCI_command('stop gmsong');

Mas, se preferir, você pode, também, criar uma variável e obter a posição, pois a função retorna valor. O valor da posição é dito, por padrão, em milisegundos.
Código:
tempo = MCI_command('status gmsong position');

Quando terminar de usar o MCI, libere o áudio antes de fechar e encerrar o programa:
Código:
MCI_command('close gmsong');

As sintaxes são fáceis e você pode verificar a forma de usar cada função no MSDN da Microsoft. Abraços.

GameMakerTutoriais

Número de Mensagens : 800
Data de inscrição : 29/01/2011
Reputação : 26
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Saber o tempo em que a musica se encontra??

Mensagem por Conteúdo patrocinado Hoje à(s) 04:42


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum