Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: 7sixerCF en Marzo 01, 2014, 05:02:15 PM

Título: Por que no funciona esto ?
Publicado por: 7sixerCF en Marzo 01, 2014, 05:02:15 PM
Lo que pasa es que tengo lo siguiente:

(http://www.subeimagenes.com/img/code-861248.png)

Esto se encuentra en step, el execute code de al final solo hace un "If i==1 {alarm[0]=5}
El alarm 0 setea la variable i a 0 para que se vuelva a generar las instancias.

Mi juego se trata de unos personajes que se crean atraves del generador que es lo que vieron anteriormente, los personajes tienen un evento create para que partan moviendose a la parte superior de la pantalla para que cuando el usuario los toque desaparescan y gane puntos, el problema es que aveces los personajes aparecian muy juntos por eso intente hacer un retardo entre ellos con un alarm el problema es que no se crean las instancias + de 1 vez :ccc
Título: Re:Por que no funciona esto ?
Publicado por: vampy09 en Marzo 02, 2014, 04:22:33 AM
Lo que creo es que la posibilidad que pones, para que se deba crear un objeto es muy poca, osea 1 de entre 100, provocando que parezca que no se crean.

Prueba con mi ejemplo


Evento Create obj_generadorg

alarm[0] = 60; //dos segundos despues de haberse creado el obj_generador

Alarma 0 obj_generador

randomize(); // hace un poco mas aleatoria la selecion
switch ( iramdon(1)) // iramdon escoge de forma aleatoria un numero entero dentro 0 y el numero que pongamos en el argumento, en este ejemplo podria ser 0 o 1 solamente.
{
case 0: // si iramdom escoge 0
   instance_create( x, y, pp_obj);
   alarm[0] = 60;
   break;
   
case 1: // si irandom escoge 1
   instance_create( x, y, y_obj);
   alarm[0] = 60;
   break;
   
}

Con este codigo se creara una instancia, ya sea del objeto pp_obj o del objeto y_obj cada 2 segundos si tu room speed es de 30.
Cambia el valor de 60 segun tus necesidades.