xcelownika=xpostaci+odleglosc*sin(degtorad(kierunek_celownika+90));
ycelownika=ypostaci+odleglosc*cos(degtorad(kierunek_celownika+90));
za kierunek celownika mozna podac
point_direction(xpostaci,ypostaci,mouse_x,mouse_y);
odleglosc to odległość od postaci do celownika w pikselach.
a w press key
var dirtemp,nowy_x_myszy, nowy_y_myszy, odl_myszy;
dirtemp=aktualny kierunek+5; //dodajemy aktualny kierunek kursora o 5
odl_myszy=point_distance(xpostaci,ypostaci,mouse_x,mouse_y);
nowy_x_myszy=xpostaci+odl_myszy*sin(degtorad(kierunek_celownika+90));
nowy_y_myszy=ypostaci+odl_myszy*cos(degtorad(kierunek_celownika+90));
window_mouse_set(nowy_x_myszy,nowy_y_myszy);
aktualny_kierunek=dirtemp;
odl_myszy to odegłośćl myszy od celownika, tak aby myszka nie skoczyła nagle zbyt bardzo z poprzedniego miejsca.