Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: thejapp en Mayo 10, 2020, 04:02:21 AM

Título: Llevar contador de enemigos y al llegar a cero suba de nivel
Publicado por: thejapp en Mayo 10, 2020, 04:02:21 AM
Buenas soy nuevo usando game maker y haciendo mi primer juego me vi con un problema, quisiera llevar un conteo de los enemigos presentes en el nivel y que este baje cada que sean destruidos y cuando llegue a cero avance al proximo nivel.

Intente asignando una variable "enemigos" al objeto donde llevo el control de los puntos e ir sumando cuando el enemigo se crea y restando cuando se destruye pero me dice que no existe la variable "enemigos"
Título: Re:Llevar contador de enemigos y al llegar a cero suba de nivel
Publicado por: getnoff en Mayo 10, 2020, 09:06:59 AM
Hola.

Hay varias razones que pueden causar el problema, pero la más probable es que estás comprobando el valor de "enemigos" con un if u otra antes de que siquiera has declarado la variable.
SI fuera ese el caso, lo mejor es que el objeto control exista desde el comienzo del juego teniendo declarada la variable para evitar el error.

Otra posibilidad es que estés destruyendo el objeto control sin que te des cuenta. Si cuando cambias de nivel se trata de un cambio de room, es probable que tengas que hacer tu objeto control como persistente.
Y otra es que estés trabajando con variables tipo locales (no creo).

Puede depender mucho de tu código, tal vez sea mejor que lo pongas.

Título: Re:Llevar contador de enemigos y al llegar a cero suba de nivel
Publicado por: elviskelley en Mayo 10, 2020, 02:55:40 PM
no es necesario estar colocando codigos , solo usa esto en el event end step
if instance_number(object.Enemigos) < 1
{room_goto_next();}

Es todo...

ahora si quieres que los muestre colocas algo en el draw
draw_text(x,y,instance_number(object.Enemigos));
Título: Re:Llevar contador de enemigos y al llegar a cero suba de nivel
Publicado por: thejapp en Mayo 10, 2020, 10:15:08 PM
Muchas gracias utilice el código dado, pero como requería que el juego evaluara si había proximo nivel para avanzar o si el juego terminaba solo utilicé "text expression" copie lo que iba en el if y añadi las condiciones para pasar de nivel oculminar el juego.