Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Chioban en Octubre 02, 2014, 02:42:11 AM

Título: (Solucionado) Como hacer que un enemigo siga al jugador
Publicado por: Chioban en Octubre 02, 2014, 02:42:11 AM
Buenas a todos.

Hoy me ha surgido un problema, cual es que no encuentro forma de lograr que un enemigo volador siga al jugador.

Este es el codigo que utilizo para algunos enemigos terrestres:
[spoiler]if OBJ_Sunso.x<x and distance_to_object(OBJ_Sunso)>10 {x-=4}
if OBJ_Sunso.x>x and distance_to_object(OBJ_Sunso)>10 {x+=4}[/spoiler]

Pero cuando se trata de enemigos que pueden volar por el mapa me es inútil.

Agradecería mucho si me encontraran una solución. Gracias por leer.
Título: Re:Como hacer que un enemigo siga al jugador
Publicado por: penumbra en Octubre 02, 2014, 05:17:23 AM
Puedes probar a usar la función move_towards_point(x,y,sp) para que el enemigo se dirija hacia el jugador, o si lo prefieres, calcular la dirección del enemigo al jugador cada cierto tiempo (en una alarma) mediante la función point_direction(x1,y1,x2,y2) y usar esa dirección para mover al enemigo.

El uso de point_direction() a mi me parece mejor porque evita tener que usar dos IF (como en tu ejemplo) para saber si se mueve a la izquierda o a la derecha
Título: Re:Como hacer que un enemigo siga al jugador
Publicado por: Chioban en Octubre 02, 2014, 11:04:49 PM
¿Podrías dejarme un ejemplo un poco más detallado?
Título: Re:Como hacer que un enemigo siga al jugador
Publicado por: Fabrizon_02 en Octubre 04, 2014, 12:48:42 AM
Como hacen el trabajo mas dificil, me da un poco de bronca  >:(

En el objeto del enemigo pone el evento STEP y pones La accion siguiente

----------------
STEP TOWARDS
x = jugador.x
y = jugador.y
----------------
Título: Re:Como hacer que un enemigo siga al jugador
Publicado por: kostra en Octubre 04, 2014, 05:52:53 PM
action_potential_step(obj_player.x,obj_player.y,speed,0);
if x>obj_player.x image_xscale=1; else image_xscale=-1;


y listo, tu personaje volará hacia tu player rodeando todos los sólidos. (edita el obj_player y el speed a tu gusto xd)
Título: Re:Como hacer que un enemigo siga al jugador
Publicado por: Chioban en Octubre 05, 2014, 05:49:31 PM
¡Muchas gracias, [user]kostra[/user] ¡Realmente me ayudo!
Título: Re:(Solucionado) Como hacer que un enemigo siga al jugador
Publicado por: kostra en Octubre 05, 2014, 07:22:26 PM
Por cierto, el "action_potential_step" no es más que el D&D de "step avoiding", el último de la pestaña move ;)