Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: J-Dek en Diciembre 10, 2011, 05:42:19 PM

Título: ?Mensajes aleatorios?
Publicado por: J-Dek en Diciembre 10, 2011, 05:42:19 PM
Pues eso, quisiera poner por ej, al encender una tv que salga un mensaje u otro.
Título: Re: ?Mensajes aleatorios?
Publicado por: MaanuRP en Diciembre 10, 2011, 06:12:29 PM
[gml]
show_message(choose("Mensaje 1","Mensaje 2","Mensaje 3"))
[/gml]
Título: Re: ?Mensajes aleatorios?
Publicado por: Zeit en Diciembre 10, 2011, 06:14:52 PM
Hola, con menos de 16 mensajes puedes usar choose, con mas pudes usar un switch con floor y random, o irandom, como vez, hay varios metodos. Busca imagenes aleatorias, objetos aleatorios, etc. y es la misma tecnica pero con textos, saludos.
Título: Re: ?Mensajes aleatorios?
Publicado por: Princesita en Diciembre 10, 2011, 07:06:32 PM
Puedes poner una variable, llamala como sea. La llame lol XD corrijo, choose solo usa n?meros.
Ahora pon esto en tu c?digo:
[gml]lol = random(10)
if lol = 0
//Tu c?digo del primer mensaje
if lol = 1
//Otro mensaje
//Y asi sucesivamente...[/gml]
Espero te sea de gran ayuda
Bye! ;D
Título: Re: ?Mensajes aleatorios?
Publicado por: MaanuRP en Diciembre 10, 2011, 08:11:28 PM
Cita de: Princesita en Diciembre 10, 2011, 07:06:32 PM
Puedes poner una variable, llamala como sea. La llame lol XD corrijo, choose solo usa n?meros.
Ahora pon esto en tu c?digo:
[gml]lol = random(10)
if lol = 0
//Tu c?digo del primer mensaje
if lol = 1
//Otro mensaje
//Y asi sucesivamente...[/gml]
Espero te sea de gran ayuda
Bye! ;D

En realidad, seria mucho mas efectivo usar:
[gml]
//Uso 3 como ejemplo, para no tener que poner muchas lineas irrelevantes para que entiendas el funcionamiento.
switch(irandom(3))
{
case 1: show_message("Mensaje 1"); break;
case 2: show_message("Mensaje 2"); break;
case 3: show_message("Mensaje 3"); break;
}
[/gml]

O si por algun motivo quieres usar variable:
[gml]
//Uso 3 como ejemplo, para no tener que poner muchas lineas irrelevantes para que entiendas el funcionamiento.
lol = irandom(3)
switch(lol)
{
case 1: show_message("Mensaje 1"); break;
case 2: show_message("Mensaje 2"); break;
case 3: show_message("Mensaje 3"); break;
}
[/gml]
Título: Re: ?Mensajes aleatorios?
Publicado por: Mgbu en Diciembre 10, 2011, 08:18:37 PM
Yo hice exactamente lo mismo para un juego, bueno, me lo dijo otro, es como los comentarios en amarillo en el Minecraft

Create
[gml]choosen = -1;
name[0] = "Martin"; //Aca escribis asi todos los comentarios
name[1] = "Gustavo";
name[2] = "Bernardi"
name[3] = "Tanques"

names = 4; //Numero de comentarios contando el 0
alarm[0]=1[/gml]

Alarm 0
[gml]choosen = floor(random(names));[/gml]

Draw
[gml]if (choosen == -1) {
    draw_text(10, 10, "...");
} else {
    draw_text(10, 10, name[choosen] + ".");
}[/gml]

Aclaro que me funciono de 10  :)
Título: Re: ?Mensajes aleatorios?
Publicado por: J-Dek en Diciembre 11, 2011, 08:59:26 AM
Cita de: MaanuRP en Diciembre 10, 2011, 08:11:28 PM
Cita de: Princesita en Diciembre 10, 2011, 07:06:32 PM
Puedes poner una variable, llamala como sea. La llame lol XD corrijo, choose solo usa n?meros.
Ahora pon esto en tu c?digo:
[gml]lol = random(10)
if lol = 0
//Tu c?digo del primer mensaje
if lol = 1
//Otro mensaje
//Y asi sucesivamente...[/gml]
Espero te sea de gran ayuda
Bye! ;D

En realidad, seria mucho mas efectivo usar:
[gml]
//Uso 3 como ejemplo, para no tener que poner muchas lineas irrelevantes para que entiendas el funcionamiento.
switch(irandom(3))
{
case 1: show_message("Mensaje 1"); break;
case 2: show_message("Mensaje 2"); break;
case 3: show_message("Mensaje 3"); break;
}
[/gml]

O si por algun motivo quieres usar variable:
[gml]
//Uso 3 como ejemplo, para no tener que poner muchas lineas irrelevantes para que entiendas el funcionamiento.
lol = irandom(3)
switch(lol)
{
case 1: show_message("Mensaje 1"); break;
case 2: show_message("Mensaje 2"); break;
case 3: show_message("Mensaje 3"); break;
}
[/gml]


Al final he usado lo que has dicho y funciona a la perfecci?n pero gracias a todos por responder, estoy aprendiendo mucho!