Hola.En mi juego de plataformas hay un enemigo que solo se mueve hacia la derecha, si lo ataco con space se muere (eso funciona) y si colisiono con el me deberia quitar una vida, pero me quita todas. Nose cual podria ser el error.
cuando colisiono con el le puse, que set lives en relative -1.

en el evento<space> puse esto.

if sprite_index=spr_run{sprite_index=spr_stand;}

if sprite_index=spr_stand
{
    sprite_index=spr_moni_ataca;
    image_index=0;
    image_speed=1;
    mov=0;golpetip=objj_punch
    combo=0;alarm[1]=1
    alarm[0]=60
    }
Gracias!!
Una animadora digital muy kawaii :3

Yo lo que acostumbro a hacer es que tras que un enemigo hiere al jugador le doy unos segundos de invencibilidad para que no se le vaya de golpe toda la salud.

y como puedo hacer eso?
Una animadora digital muy kawaii :3

Creale al personaje del jugador una variable llamada invencible, que estará de inicio a 0.
Si recibe un golpe, se comprobara primero que invencible esta a 0, y si es así, perdera salud y pasara a valer z*room_speed invencible.
Por supuesto, en end_step se estará constantemente comprobando si invencible es mayor que 0, y si es así, se descontara 1.

Puedes hacerlo invencible, o darle una pauta de ataques al enemigo mediante alarmas y variables.