Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: TheSquirrel en Diciembre 12, 2010, 03:27:51 AM

Título: problema con doble codigo. IA Basica
Publicado por: TheSquirrel en Diciembre 12, 2010, 03:27:51 AM
Hola miren tengo este objeto:
obj_seguidor
obj_zombi
el obj_seguidor tiene este codigo en step :
[gml]//Puedes usar "and" para juntar dos valores
var a;
a=0
tiempo+=1

if distance_to_object(player)<50 //si quieres cambia la distancia
{ {
a.direction= point_direction(x,y,player.x,player.y) a.speed=2 tiempo=0}
if distance_to_object(player)>10{
   //Este mueve el objeto evadiendo todos los obstaculos hasta llegar al punto establecido
    mp_potential_step(player.x,player.y,3,0)
}}


image_angle=point_direction(x,y,player.x,player.y)[/gml]
lo que ase es que persigue al Player.
pero tambien tiene este codigo en Step
[gml]if distance_to_object(zombie)<50 //si quieres cambia la distancia
{ if tiempo>=15{a=instance_create(x,y,obj_bullet_enemy);
a.direction= point_direction(x,y,zombie.x,zombie.y) a.speed=8 tiempo=0}
if distance_to_object(zombie)>50{
   //Este mueve el objeto evadiendo todos los obstaculos hasta llegar al punto establecido
    mp_potential_step(zombie.x,zombie.y,2,0)
}}[/gml]
que ase lo mismo pero con Zombi.
y quiero que cuando el obj_seguidor detecte cuando esta a 50 pixeles de Zombi image_angle sea zombi (como esta puesto) y que cada 15 de time , dispare el obj_bullet_enemy.
el problema es que pongo el codigo y no ase ninguna de las dos cosas
como lo arreglo?
Título: Re: problema con doble codigo. IA Basica
Publicado por: hernis en Diciembre 12, 2010, 04:49:40 AM
ahorita te contesto esta y despues vamos con la otra
hay una parte en ese codigo ke no puede cumplirse xq el seguidor tiene ke seguir a dos objetos el zombie y el player asi ke lo tienes ke hacer es pensar en a kien kieres darle mas prioridad

si es al zombie y sumponiendo ke son varios tienes ke buscar el zombie mas cercano con instance_nearest
Título: Re: problema con doble codigo. IA Basica
Publicado por: TheSquirrel en Diciembre 12, 2010, 03:58:52 PM
bueno es que la idea , es que mi player "reclute" a lo seguidores, entonces los encuentra y sigue obj_seguidor a Player.
pero en medio del camino aparesen zombi (el objeto) y ah? quiero que el obj_seguidor dispare a zombie. PERO , que lo "detecte" y lo siga hasta matarlo (cuando Zombie pasa a estar en obj_zombie_dead") y ah? obj_seguidor retoma el seguir a player ,pero si hay mas zombi que los detecte tambien. :)
es algo complejo, pero creo que se puede hacer. ademas no estoy tan lejos xD.

PD. si se puede que los obj_seguidor tengan una distancia entre los demas obj_seguidor (por que son 3) de 10 pixeles, para que no se junten cuando estan siguiendo a player.

muchas gracias
Título: Re: problema con doble codigo. IA Basica
Publicado por: hernis en Diciembre 12, 2010, 09:16:28 PM
aki te dejo el ejemplo ya con todo eso. me dices si hay una falla  8)
Título: Re: problema con doble codigo. IA Basica
Publicado por: TheSquirrel en Diciembre 13, 2010, 01:49:44 AM
men Me funciono de maravilla!
el unico problema es que se junta al seguir a player. (el seguidor) y quiero que entre obj_seguidor y otro obj_seguidor tenga una distancia de 10 pixeles
como lo hago?
Título: Re: problema con doble codigo. IA Basica
Publicado por: hernis en Diciembre 13, 2010, 03:05:35 AM
para mientras lo compongo  :-[...
(http://img257.imageshack.us/img257/5259/screenshot101copia.png)
Título: Re: problema con doble codigo. IA Basica
Publicado por: LuisYx en Diciembre 13, 2010, 03:10:13 AM
xD. vere el ejemplo para ver si me puede servir en un futuro :P.
Título: Re: problema con doble codigo. IA Basica
Publicado por: hernis en Diciembre 14, 2010, 01:37:04 AM
aki te lo dejo si hay algun problema o no entiendes algo me avisas  :D