Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: mchgforos en Marzo 30, 2014, 05:02:36 PM

Título: Creación de objetos con cierta puntuación
Publicado por: mchgforos en Marzo 30, 2014, 05:02:36 PM
Buenas, estoy intentando hacer que en mi juego al llegar a ciertos puntos (10 por ejemplo) se cree un nuevo objeto en la room. Lo que estoy intentando es que el objeto controlador tenga en el evento step un if que pregunta si la puntuación es de 10 puntos se cree el otro objeto.
El problema que tengo es que el objeto está creándose hasta que la puntuación cambia a 11 o más. Había pensado en crear una variable booleana que me dijese si se ha creado o no para de ser así que no cree ningún objeto más pero no quiero que se cree solo cuando tengo 10 puntos sino cada 10 puntos que haya un objeto nuevo.
¿Hay alguna solución para ello?
Gracias de antemano.
Título: Re:Creación de objetos con cierta puntuación
Publicado por: fab62 en Marzo 31, 2014, 03:41:49 AM
A ver... se me ocurre:


// Evento Create
crear = false;

// Evento Step
if (puntaje mod 10 == 0 && puntaje > 0)
{
     if (crear == false)
     {
           instance_create(x,y,objeto);
           crear = true;
     }
}
else
{
      crear = false;
}

Título: Re:Creación de objetos con cierta puntuación
Publicado por: vampy09 en Marzo 31, 2014, 04:06:59 AM
Otra manera:

obj_control

Evento Create
global.creacion = 10;


Evento Step



if  global.points >= global.creacion
{
instance_create( x, y, obj_a_crear );
global.creacion += 10;
}
Título: Re:Creación de objetos con cierta puntuación
Publicado por: mchgforos en Abril 01, 2014, 02:29:17 AM
He probado a ejecutar los dos códigos:
en el evento create de mi obj_info (el controlador) he puesto como código:
global.creacion = 10;
Y en el evento step
if  score == global.creacion
{
instance_create( 200, 100, obj_bomba);
global.creacion += 10;
}


y no me funciona, he probado a hacerlo como dice el otro compañero poniendo en create:
global.create=false;
y en el step:

if (score mod 10 == 0 && score > 0)
{
     if (create == false){
           instance_create(100,100,obj_bomba);
           create = true;
     }
}else{ create = false; }


Y tampoco me funciona.
A lo que me refiero es a que la primera vez sí hace el if pero una vez creado el objeto aunque tenga más de 20 puntos (con 20 puntos debería salir otra bomba) no vuelve a pasar por él y no entiendo por qué.
Título: Re:Creación de objetos con cierta puntuación
Publicado por: ocarina en Abril 01, 2014, 02:51:03 AM
amigo prueva esto

create

crear = true;
puntosparacrear=9;


step

if (score>puntosparacrear and crear=true)
{
     
           instance_create(x,y,objeto);
           crear = false;
           puntosparacrear+=10;

     
}
else
{
      crear = true;
}