Me temo que debo disculparme, he hecho un par de pruebas y resulta que el c?digo que te di no te sirve para lo que quieres. Habr? que complicarse un poco:
Este c?digo busca cual es el m?s cercano de cada uno de los 3 tipos de objetos. Luego compara distancias y activa la alarma del m?s cercano de todos. Deberia funcionarte sin problemas.
Código [Seleccionar]
var Obj1,Obj2,Obj3;
Obj1 = instance_nearest(x,y,Lanzamisile);
Obj2 = instance_nearest(x,y,Misil);
Obj3 = instance_nearest(x,y,Misilrapido);
if (distance_to_object(Obj1)<distance_to_object(Obj2)&&distance_to_object(Obj1)<distance_to_object(Obj3)) alarm[0]=1;
else if (distance_to_object(Obj2)<distance_to_object(Obj1)&&distance_to_object(Obj2)<distance_to_object(Obj3)) alarm[1]=1;
else if (distance_to_object(Obj3)<distance_to_object(Obj1)&&distance_to_object(Obj3)<distance_to_object(Obj2)) alarm[2]=1;
Este c?digo busca cual es el m?s cercano de cada uno de los 3 tipos de objetos. Luego compara distancias y activa la alarma del m?s cercano de todos. Deberia funcionarte sin problemas.