Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: ysaaccapo13 en Septiembre 06, 2017, 12:31:18 AM

Título: Generar lluvia en tiempo al azar (Solucionado)
Publicado por: ysaaccapo13 en Septiembre 06, 2017, 12:31:18 AM
Buenas que tal comunidad!

Necesito una pequeña ayuda he intentado y no comprendo muy bien el tema de las alarmas y variables, tengo un script de lluvia que segui en un tutorial el caso es que me gustaria que se active cada cierto tiempo random es decir al azar,y que dure un tiempo diferente, pondre el script que uso de lluvia para que se den una idea, desde ya, muchas gracias!

Obj lluvia
_________________

Event Create:

// set height

height = 40;

________________

Event Step:

height -= 1;

if(height <= 0)
{
instance_destroy();
instance_create(x,y,obj_splash);
}

________________________

Event Draw:

draw_set_color(c_gray);
draw_set_alpha(.6);

var length;
var vectorx, vectory;

vectorx = (x-(view_xview+view_wview/2))/(view_wview/2);
vectory = (y-(view_yview+view_hview/2))/(view_hview/2);

length = 2;

draw_line_width(x+vectorx*sqr(height),y+vectory*sqr(height),
                x+vectorx*sqr(height+length),y+vectory*sqr(height+length),2);
               
draw_set_alpha(1);

____________________________________________________________________

y ocupo a parte un obj_raingenerator

Event step;

///generate rain
edge = 200;

repeat(40)
{
    instance_create(view_xview - edge + random(view_wview + edge*2),
          view_yview - edge + random(view_hview + edge*2), obj_lluvia);
}

______________________________________________________________

Disculpen las molestias soy nuevo en este foro, gracias!
Título: Re:Generar lluvia en tiempo al azar
Publicado por: Seirlord_Games en Septiembre 06, 2017, 01:50:32 AM
Puedes crear un obj_Sistema. Y ponerle en el evento create:

alarm[0]=irandom_range(60,3600)*room_speed;


Lo que hace es llamar a la alarma 0 en un tiempo aleatorio entre 60 y 3600 segundos.

En el evento de Alarm 0:

instante_create(x,y,obj_raingenerator);


Y ahora en el evento create del obj_raingenerator:

alarm[0]=irandom_range(60,3600)*room_speed;

Y en el evento alarma 0;

instante_destroy();
Título: Re:Generar lluvia en tiempo al azar
Publicado por: ysaaccapo13 en Septiembre 08, 2017, 02:55:15 PM
Gracias por responder! pero intente con el codigo que pasaste, puse en la room el obj_Sistema sacando el Obj_raingenerator, pero aun asi no parece funcionar porque no llueve nunca.. jaja
Título: Re:Generar lluvia en tiempo al azar
Publicado por: 3dgeminis en Septiembre 08, 2017, 04:05:50 PM
Proba a disminuir el tiempo entre 5 y 30 segundospara probar (3600 = 1 hora !!!)
En  lugar de elegir valores random podrias definir algunos valores y usar un choose para elegirlos.
Título: Re:Generar lluvia en tiempo al azar
Publicado por: ysaaccapo13 en Septiembre 08, 2017, 04:54:35 PM
ahh ya lo entendi! aunque ahora funciona, no se repite la secuencia, es decir aparece en tal tiempo al iniciar la room pero si espero todo el tiempo del mundo y no vuelve a aparecer la lluvia.. lo del choose no lo entiendo muy bien
Título: Re:Generar lluvia en tiempo al azar (Medio solucionado)
Publicado por: Seirlord_Games en Septiembre 08, 2017, 05:41:52 PM
Pon esto en la alarma 0 del obj_raingenerator:


with obj_Sistema {
   alarm[0]=irandom_range(5,30)*room_speed;
}
instance_destroy();
Título: Re:Generar lluvia en tiempo al azar (Medio solucionado)
Publicado por: ysaaccapo13 en Septiembre 08, 2017, 07:35:48 PM
Cita de: Seirlord_Games en Septiembre 08, 2017, 05:41:52 PM
Pon esto en la alarma 0 del obj_raingenerator:


with obj_Sistema {
   alarm[0]=irandom_range(5,30)*room_speed;
}
instance_destroy();


Ahora si, muchas gracias!! funciona de maravilla les agradezco!