Na szybko to będzie coś takiego:
GML
var pr_obj,dir_obj,len_x,len_y,turn;
pr_obj = point_distance(room_width/2,room_height/2,x,y)
dir_obj = point_direction(room_width/2,room_height/2,x,y)
//draw_circle(room_width/2,room_height/2,pr_obj,true)
turn = dir_obj - align
len_x = room_width/2+lengthdir_x(pr_obj,turn)
len_y = room_height/2+lengthdir_y(pr_obj,turn)
//draw_circle(len_x,len_y,10,true)
x = len_x
y = len_y
Odwracamy na kole w przeciwną stronę co align :)