Noviembre 23, 2018, 01:04:12 AM Ultima modificación: Noviembre 23, 2018, 03:30:14 PM por AmazingMan
Hola, estoy diseñando un juego al estilo Megaman y me gustaría hacer un enemigo volador que te siga a cierta distancia, después te ataque, vuelva a tomar cierta distancia del jugador, te vuelva a atacar, y así sucesivamente. Algo así como Blader o Bunny Heli en Megaman 1.

#1 Noviembre 23, 2018, 03:23:41 AM Ultima modificación: Noviembre 23, 2018, 03:26:39 AM por Kain88
Podrías usar move_towards_point(jugador.x, jugador.y, 2) por ejemplo. Tendrías que reemplazar "jugador" por el nombre que le hayas puesto al objeto de tu jugador y el 2 por la velocidad que quieras. Y luego tendrías que hacer que se aleje usando hspeed, vspeed o tus propias variables que controlen las velocidades horizontales y verticales. Es una de las formas más simples de hacerlo.

Lo que te recomiendo en el caso que no lo estés haciendo es empezar a programar a los objetos usando estados, te va a ser mucho más fácil hacer este tipo de movimientos, tanto para tu jugador como los enemigos.

En en el caso del enemigo que queres hacer, tendría dos estados: uno para acercarse al jugador y otro para alejarse.

EDIT: Me olvidé de mencionar que también lo que podrías hacer es luego de que el enemigo se acerque al jugador se active una alarma y cuando esta llegue a cero se aleje, luego activas otra alarma para que cuando llegue a cero se acerque y asi sucesivamente.

#2 Noviembre 23, 2018, 04:56:15 AM Ultima modificación: Noviembre 23, 2018, 03:28:21 PM por AmazingMan
Vale gracias, aunque aun me quedó una duda... ¿cómo le hago para que el enemigo siga siguiendo al jugador pero con cierta distancia?.

Bueno, ya lo solucioné solo hacia falta colocar en una alarma: move_towards_point(jugador.x, jugador.y, 2), y en la otra: move_towards_point(jugador.x+20, jugador.y-15, 2). Gracias por tu aporte amigo :D