Noticias

Importante: ¡Si quieres publicar tu juego no olvides leer este tema!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: COMO HACER QUE MI ENEMIGO ME PERSIGA  (Leído 145 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado beowulf260

en: Octubre 12, 2018, 06:29:19 am
hola, necesito ayuda para hacer que mi enemigo me siga y cambie de vista dependiendo si estoy de lado derecho o izquierdo

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado HKaichim

Respuesta #1 en: Octubre 12, 2018, 01:01:21 pm
hola, necesito ayuda para hacer que mi enemigo me siga y cambie de vista dependiendo si estoy de lado derecho o izquierdo
Hay muchas formas, puedes utilizar las acciones de Towar colocando el nombre del enemigo.x y enemigo.y dependiendo adonde es que quieres que se vaya a mover o utilizando tambien este comando que me dio BssString
Código: [Seleccionar]
//Código1 - El obj2 elige al obj1 más cercano para comenzar a seguirlo
id_seguir = noone //Declaramos una variable de instance (debes llamar el Id del objeto para leerla)
var distancia = -1 //Declaramos una variable local (Existe en el código y cualquier objeto la puede leer, es casi como una variable global, pero se destruye al terminar de ejecutar este código)
with (obj2) if (my_id = 0 || my_id = 1) {
if (other.id_seguir = noone) { other.id_seguir = id; distancia = point_distance(other.x,other.y,x,y) }
else {
var new_distancia = point_distance(other.x,other.y,x,y)
if new_distancia < distancia { other.id_seguir = id; }
}
}

//Código2 - El obj2 se desplaza hacia el objetivo que quiere seguir
if id_seguir != noone {
var velocidad = 1
if point_distance(x,y,id_seguir.x,id_seguir.y) > velocidad {
var direccion = point_direction(x,y,id_seguir.x,id_seguir.y);
x += lengthdir_x(velocidad,direccion)
y += lengthdir_y(velocidad,direccion)
}
}
Cualquier duda checa el post: http://www.comunidadgm.org/preguntas-y-respuestas/un-objetivo-persigue-a-otro-por-la-id/msg134516/#msg134516

 
Los siguientes usuarios dieron las gracias a este tema: Yuzo