You can do that by doing something like (without getting stuck in the first frame, put this into the action called by pressing Cursor Left):
if not started then //this is for not getting stuck in the first frame
local point=getObject("Game.GameCurrentCharacter"):getPoint(VCharacterPosition)
point.x=0
getObject("Game.GameCurrentCharacter"):setValue(VCharacterDestination,point)
started=true
end
And for Cursor Left Up, you need to stop the character by an action part:
This works incredibly good for most scenarios because the character is finding its way on its own and you don't need to do jump'n'run. You can do the other directions in the same way just by modifying point.x=0 (for up point.y=1080 or your screen height, for right point.x= your screen width, for down point.y=0). A bit tricky is moving down left or up left or something like this. In that case you need to remember the current direction and combine these like this point.x = 0 and point.y = 0 and it should work.