Thanks for reply! Hehehe I put a bad delay for the frames in the gif :P
I had the formula just there for use it, I think must be something like this (I just wake up in this moment, I don't test it):
player.Y:
mouse.Y + int(Round( distance (mouse.X,mouse.Y,player.X,player.Y)* Sin( player.angle ) ));
player.X:
mouse.X + int(Round( distance (mouse.X,mouse.Y,player.X,player.Y) * Cos( player.angle ) ));
I will confirm if this works here :D