Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Tekon en Julio 30, 2013, 04:10:06 PM

Título: Enemigo que mira en tu dirección
Publicado por: Tekon en Julio 30, 2013, 04:10:06 PM
Puede que esta sea una pregunta muy tonta, pero no consigo resolverla xD

Me gustaría que si yo estoy a la derecha del enemigo, este  mire a la derecha y a su vez, si estoy arriba, que mire arriba.
He probado con este código:
Step:
if x < personaje.x {
image_single=0
}
else
if x > personaje.x {
image_single=1
}

Pero no funciona, supongo que sea xk el enemigo está en movimiento, pero la cuestión es que no me sale...D:
Título: Re:Enemigo que mira en tu dirección
Publicado por: deathmetal en Julio 30, 2013, 10:13:49 PM
Yo tengo un RPG de movimiento en 360° y lo hice de esta manera.
[Create]
Declaras la variable direccion=0
[Step]
direccion=radtodeg(arctan2(personaje.x/personaje.y)) //arctan2 es para obtener el ángulo que se crea entre tu enemigo y tu personaje usando la cotangente (trigonometría aplicada) de esta manera la variable direccion te da un valor en grados.
if direccion<45 and direccion>-45{sprite_index=personaje_derecha} //con este tipo de expresiones le asignas un sprite diferente dependiendo del ángulo que se forma. cada 45° es una dirección diferente