Jest to wręcz banalne:
GML
var mx, my;
mx=display_mouse_get_x()-display_get_width()/2;
my=display_mouse_get_y()-display_get_height()/2;
dir-=mx/5
zdir-=my/5;
display_mouse_set(display_get_width()/2,display_get_height()/2);
if(zdir>89) { zdir=89; }
if(zdir<-89) { zdir=-89; }