Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: TheSquirrel en Febrero 22, 2016, 05:47:23 PM

Título: (Solucionado) Que aparezca un sprite cuando se acerca un enemigo
Publicado por: TheSquirrel en Febrero 22, 2016, 05:47:23 PM
Hola amigos;

Tengo una consulta, tengo un objeto que sigue a mi personaje constantemente, y quiero que cuando se acerque a una distancia X aparezca un mensaje sobre él. Tengo un objeto creado que se llama obj_bug_message que tiene 3 sprites, y quiero especificamente que aparezca el sprite 3.
Tengo este codigo, pero no me ha dado resultado...

obj_bug tiene en create instance_create(x,y,obj_bug_message); entonces:

obj_bug_message Evento Create:
////////// Varibale generales
mensaje1 = false
mensaje2 = false
mensaje3 = false //este quiero que aparezca


obj_bug_message Evento Step
if (distance_to_object(obj_enemy_bit < 64)) //este es el enemigo
    {
        alarm[0] = 10
    }


obj_bug_message Evento Alarm 0
mensaje3 = true
alarm[1] = 10


obj_bug_message Evento Draw
if mensaje3 = true
{
sprite_index = spr_bug_message
image_index = 2
}


obj_bug_message Evento Alarm 1
mensaje3 = false

Intente que de esta forma apareciera y desapareciera constantemente, sin embargo, ni si quiera aparece el mensaje.

Muchas gracias!

Título: Re:Que aparezca un sprite cuando se acerca un enemigo
Publicado por: FridaFlowers en Febrero 22, 2016, 06:34:21 PM
Esto puede ser porque en el evento step se establece constantemente la alarma, por lo que nunca comienza a retroceder para que se active.

En su lugar, debes verificar que no se esté ejecutando alarm[0] para lanzarla:

if (distance_to_object(obj_enemy_bit) < 64)
    {
        if (alarm[0] == -1)
             alarm[0] = 10
    }


fijate si funciona así
Título: Re:Que aparezca un sprite cuando se acerca un enemigo
Publicado por: TheSquirrel en Febrero 22, 2016, 06:54:50 PM
No, tampoco me ha funcionado :(
Título: Re:Que aparezca un sprite cuando se acerca un enemigo
Publicado por: ordo_ab_chao en Febrero 22, 2016, 07:14:20 PM
prueba poniendo en create event: image_speed = 0; y luego usa la comprobación if (alarm[0] == -1) que mencionó antes  FridaFlowers,  Saludos!
Título: Re:Que aparezca un sprite cuando se acerca un enemigo
Publicado por: TheSquirrel en Febrero 23, 2016, 01:54:48 AM
¡Afortunadamente solucionarón mi problema!

Hice lo que me dijieron, agregar if (alarm[0] == -1) en el step y poner image_speed = 0. Ademas de eso traspase la informacion del sprite que antes estaba en Draw a Step.

¡¡Muchas gracias!!  :D