Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: aaron966 en Septiembre 05, 2011, 04:43:29 PM

Título: Que el jugador elija su propia musica (solucionado por killer)
Publicado por: aaron966 en Septiembre 05, 2011, 04:43:29 PM
Hola, como puedo hacer que el jugador de tu juego elija la musica que el propio elija de su pc?  ??? ???
Título: Re: Que el jugador elija su propia musica
Publicado por: MaanuRP en Septiembre 05, 2011, 05:46:42 PM
Mmm se que para agregar sonidos externos hay que hacerlo con:


sound_add(fname,kind,preload)
Donde:
fname - Nombre y ubicaci?n del archivo
kind - Tipo de sonido (0 = normal,1 = m?sica de fondo,2 = sonido 3d, 3 = Reproducir con el reproductor de Windows)
preload - Preparar la m?sica antes de ser usada.


Habria que ver como quieres hacer para elegir el "fname".
Título: Re: Que el jugador elija su propia musica
Publicado por: aaron966 en Septiembre 05, 2011, 07:17:23 PM
  ;)ya, no se que poner en 'fname', per? eso lo vi en un ejemplo no se de donde xd
Título: Re: Que el jugador elija su propia musica
Publicado por: MaanuRP en Septiembre 05, 2011, 11:21:59 PM
Y, lo basico seria que le pidas al jugador que ponga la cancion en la carpeta del juego y que escriba el nombre de la cancion que quiere.

Por ejemplo:

CitarPor ejemplo, si queremos cargar un archivo MIDI para ser usado como m?sica de fondo en el juego, usar?amos algo similar a:

C?digo:

mi_musica1 = sound_add("musica1.mid",1,true)


Esto es s?lo aplicable para archivos WAV o MIDI.

Para abrir MP3 u otros archivos de m?sica que son reproducibles comunmente con el Reproductor de Windows (eso excluye los archivos OGG), usar?amos:

C?digo:

mi_musica2 = sound_add("musica2.mp3",3,true)


Para reproducir nuestra m?sica usar?amos el c?digo:

C?digo:

sound_play(mi_musica)


Para encontrar m?s funciones para m?sica y sonido, vaya al manual de GM.
Título: Re: Que el jugador elija su propia musica
Publicado por: aaron966 en Septiembre 05, 2011, 11:24:53 PM
Gracias, lo probare y comento
Título: Re: Que el jugador elija su propia musica
Publicado por: aaron966 en Septiembre 06, 2011, 12:44:34 PM
Algo har? mal porque no me funciona :-[ He puesto en el evento create de un objeto
[gml]sound_add("musica1.mp3",1,true)[/gml]
I si aprietas space
[gml]sound_play("musica1")[/gml]
Tambien he puesto la canci?n en mp3 en la carpeta de juego,con el nombre''musica1''
Per? al presionarle me dice que el sound no existe
Título: Re: Que el jugador elija su propia musica
Publicado por: Daz en Septiembre 06, 2011, 12:47:29 PM
Ser?a algo as?:
[gml]musica1=sound_add("musica1.mp3",1,true);
sound_play(musica1);[/gml]

Debes asignarlo como si fuera una variable.
Título: Re: Que el jugador elija su propia musica
Publicado por: aaron966 en Septiembre 06, 2011, 02:39:45 PM
No me funciona :( lo pongo y me da que dejo de funciona. Windows esta buscando una soluci?n
Título: Re: Que el jugador elija su propia musica
Publicado por: Killer en Septiembre 06, 2011, 11:02:25 PM
Prueba esto, usa este c?digo cuando quieras que el jugador ponga un mp3 propio:

[gml]var MP3;
MP3 = get_open_filename("MP3 file|*.mp3","");
if MCI_command("status FileAlias mode") != "" MCI_command('close FileAlias');
MCI_command('open "' + MP3 + '" type MPEGVideo alias FileAlias');
if MCI_command("status FileAlias mode") != "playing" MCI_command('play FileAlias from 0');[/gml]

Y este otro c?digo debe usarse en el evento step:

[gml]if MCI_command("status FileAlias length") == MCI_command("status FileAlias position")
    MCI_command("close FileAlias");[/gml]
Título: Re: Que el jugador elija su propia musica
Publicado por: aaron966 en Septiembre 06, 2011, 11:48:03 PM
Cita de: Killer en Septiembre 06, 2011, 11:02:25 PM
Prueba esto, usa este c?digo cuando quieras que el jugador ponga un mp3 propio:

[gml]var MP3;
MP3 = get_open_filename("MP3 file|*.mp3","");
if MCI_command("status FileAlias mode") != "" MCI_command('close FileAlias');
MCI_command('open "' + MP3 + '" type MPEGVideo alias FileAlias');
if MCI_command("status FileAlias mode") != "playing" MCI_command('play FileAlias from 0');[/gml]

Y este otro c?digo debe usarse en el evento step:

[gml]if MCI_command("status FileAlias length") == MCI_command("status FileAlias position")
    MCI_command("close FileAlias");[/gml]


Muchas gracias es exactamente eso a lo que me referia
saludos  :o :o :o