You could use this function to find the angle between the two points (character and mouse). You might want to change it so that the characterx#=object screen x() and charactery#=object screen y().
I did not take the time to get the exact right angles for displaying the direction (North, south, etc.) but it has the general idea.
sync on
set text opaque
do
sync
characterx#=screen width()/2
charactery#=screen height()/2
a#=Find_Angle(characterx#,charactery#,mousex(),mousey())
set cursor 0,0
print a#
if a#<30 or a#>=330
print "North "
endif
if a#=>30 and a#<60
print "North West "
endif
if a#=>60 and a#<120
print "West "
endif
if a#=>120 and a#<150
print "South West "
endif
if a#=>150 and a#<210
print "South "
endif
if a#=>210 and a#<240
print "South East "
endif
if a#=>240 and a#<300
print "East "
endif
if a#=>300 and a#<330
print "North East "
endif
loop
function Find_Angle(px1#,py1#,px2#,py2#)
angle#=atan((px2#-px1#)/(py2#-py1#))+((py2#-py1#)>0)*180+((py2#-py1#)<0)*((px2#-px1#)>0)*360
endfunction angle#