RetroX's move contact supplies the abillity to set direction and distance, though.
you'd use it as such
set script name: move_contact_retro (or whatever)
i=0;
error=false;
x2=x;
y2=y;
while(place_free(x2+cos(degtorad(argument0)),y2-sin(degtorad(argument0))))
{
if i<argument1
{
x2+=cos(degtorad(argument0));
y2-=sin(degtorad(argument0));
i+=1;
}
else
{
return false;
error=true;
break;
}
}
if error=false
{
x=x2;
y=y2;
}
Put that code into the script.
Then call it as such
move_contact_retro(Direction.Distance)
This is a translation for all the idiots out there like me!