Buenas a todos, en mi juego he implementado aliados (personajes que ayudan al jugador), y me gustaría que hagan prioridades, por ejemplo, que primero detecte si esta el "boss" en el mapa (por ejemplo), y si no esta que vaya a por los enemigos normales.
Por el momento tengo este código:
if instance_exists(obj_parente_enemigos) {mp_potential_step(obj_parente_enemigos.x,obj_parente_enemigos.y,velocidad,false);}
Gracias de antemano! :)
A lo mejor tendría que buscar el enemigo más próximo
if instance_exists(obj_boss)
{
var Id = instance_nearest(x,y,obj_boss);
mp_potential_step(Id.x, obj_Id.y , velocidad,false);
}
else
{
if instance_exists(obj_parente_enemigos)
{
var Id = instance_nearest(x,y,obj_parente_enemigos);
mp_potential_step(Id.x, obj_Id.y , velocidad,false);
}
}
Cita de: romon_28 en Enero 22, 2015, 02:55:32 PM
A lo mejor tendría que buscar el enemigo más próximo
if instance_exists(obj_boss)
{
var Id = instance_nearest(x,y,obj_boss);
mp_potential_step(Id.x, obj_Id.y , velocidad,false);
}
else
{
if instance_exists(obj_parente_enemigos)
{
var Id = instance_nearest(x,y,obj_parente_enemigos);
mp_potential_step(Id.x, obj_Id.y , velocidad,false);
}
}
Perdona mi ignorancia, pero nunca he tocado esto de las variables y no se que poner en "Id" y "obj_Id", gracias por responderme! :)
yo lo haría con una variable de control que se verifique antes de tomar la decisión de atacar
en step sería algo asi:
///decisión de blanco a atacar
var blanco = "";
if (instance_exists(boss_obj))
{
blanco = "BOSS";
}
else if (instance_exists(normal_enemy_obj))
{
blanco = "normal";
}
///ataque!
switch(blanco)
{
case "BOSS":{
//codigo de atacar al boss :V
break;
}
case "normal":{
//codigo de atacar a los enemigos normales
break;
}
default:{
//no atacar(?) cuando no hay enemigos
break;
}
}