pues eso, como puede saber cual es el mas cercano de 3 instancias distintas, para este caso, es una ya que puede atacar a 3 tipos de enemigos, pero solo debe de atacar al mas cercano, he probado con instance_reares, pero no se usarlo para 3 objetos, ?se os ocurre alguna idea?
Gracias por leer, un saludo.
Funcionara asi??
instance_deactivate_all(0)
instance_activate_object(obj) //Obj es el objeto que quieres chequear
Bueno, no se si instance_nearest chequea objetos desactivados, pero en caso de que no, eso te
servira
Suerte :)
mmm eso no es XD, tal vez no me haya explicado bien, instance_nearest devuelve el objeto mas cercano, por ejemplo, si hay muchos obj_1, y el obj_2 ataca al mas cercano, atacara solo a ese, y no al resto, pero si esta rodeado, de obj_1, obj_3 y obj_4, atacara al mas cercano de cada uno, en cambio lo que quiero es que ataque al solo al que este mas cerca a pesar de ser 3 objetos distintos.
a ver si ahora lo he dejado mas claro XD
Prueba con:
cercanos[0]=instance_nearest(x,y,obj1);
cercanos[1]=instance_nearest(x,y,obj2);
cercanos[2]=instance_nearest(x,y,obj3);
cerca = -999;
dist = 999999;
for(i=0;i<3;i+=1){
if(instance_exists(cercanos[i])){
if(distance_to_object(cercanos[i])<dist){
dist = distance_to_object(cercanos[i]);
cerca= cercanos[i];
}
}
}
En cerca tendras la id del objeto mas cercano
y si usas unparent para todos los enemigos?
asi solo tienes que checar al objeto parent mas cercano y con eso englobas a todos los enemigos que tienen el mismo parent. ;D
hola, ya lo consegui con un poco de cada ??
muchas gracias por vuestra ayuda
un saludo