#1 Mayo 28, 2022, 08:18:59 AM Ultima modificación: Mayo 28, 2022, 10:16:13 AM por Jeffrey Faper
la logica es la misma con la que mueves al jugador
valores negativos sumados a la x del jugador haran que se mueva hacia la izquierda
valores positivos sumados a la x del jugador haran que se mueva hacia la derecha
entonces puedes usar una variable para almacenar hacia que lado mira el personaje
y usarlo en tu variable de velocidad horizontal

por ejemplo:
[gml]
/*
sight=-1;// personaje mira hacia la izquierda.
sight=1; //personaje mira hacia la derecha.
*/
//suponiendo que la manera de inicializar su movimiento es esta
var horMove=(-keyLeft+keyRight);  //esto entrega -1 si se presiona la izquierda y  1 si se presiona la derecha.
if(horMove<>0){
   sight=horMove; //con esto ya tiene hacia donde esta mirando su personaje
}
//cuando ejecutes el ataque con desplazamiento simplemente  declaras tu velocidad horizontal de esta forma
hspd=sight*5;//el personaje dasheara hacia donde mira
[/gml]
quedaria algo asi: