Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: malissimofilms en Abril 03, 2011, 05:40:25 PM

Título: Dudas sobre el IA
Publicado por: malissimofilms en Abril 03, 2011, 05:40:25 PM
Buenas, no se como se hace un IA de un enemigo, el enemigo lo que hace es dar pu?etazos cuando este cerca del jugador y saltar para esquivar lo golpes del jugador.
Título: Re: Dudas sobre el IA
Publicado por: MatuX en Abril 03, 2011, 05:55:52 PM
pero conoces las funciones del gml que te van a facilitar el trabajo??
Título: Re: Dudas sobre el IA
Publicado por: malissimofilms en Abril 03, 2011, 07:10:55 PM
Cita de: MatuX en Abril 03, 2011, 05:55:52 PM
pero conoces las funciones del gml que te van a facilitar el trabajo??

No, no las conozco.
Título: Re: Dudas sobre el IA
Publicado por: klys en Abril 03, 2011, 08:07:25 PM
Estas grave XD!

Solo debes aplicar un poco de logica....

El enemigo debe esperar a que el heroe de acerce o ataque, si ataca salta, si se acerca ataca, seria mas o menos asi:
[GML]
//En STEP EVENT:
dis = sqrt( sqr(HEROE_OBJ.x-x) + sqr(HEROE_OBJ.y-y))
// DIS calcula la distancia entre el enemigo y el hereo donde HEROE_OBJ es el nombre del OBJ del hereo

MIN = 100 // distancia minima para que el enemigo ataque

if (dis < MIN)
{
 // El enemigo ataca
}

if (global.Ataque == 1)
{
 // El enemigo Salta
}
[/GML]

Si el ataque es un objeto que debe pegar al enemigo debes ponerle en su creacion:

[GML]
global.Ataque = 1
[/GML]

Y en su destruccion:
[GML]
global.Ataque = 0
[/GML]

Si quieres que el enemigo tenga una direccion de ataque entonces necesitaras la siguiente linea que calcula la direccion hacia donde esta el HEREO tomando como punto inicial al enemigo:
[GML]
direccion = point_direction(x,y,HEROE_OBJ.x,HEROE_OBJ.y)
// DIRECCION calcula la direccion hacia donde esta el HEROE
[/GML]


Si no sabes usar GML es hora de que empiezes a usarlo xd

Espero haberte ayudado en algo...