So For Example I Want The Player Character To Move To A Block But I Don't Want Him To Move With WASD, Is It Posible?
While i dont know how to do the freezeing of movements you can use this to do that https://developer.roblox.com/api-reference/property/Player/DevTouchMovementMode and https://developer.roblox.com/api-reference/property/Player/DevComputerMovementMode
As for making the player move to a certain position you can use:
Player.Character.Humanoid:MoveTo()
All info on this can be found here: https://developer.roblox.com/api-reference/function/Humanoid/MoveTo
Sorry I didn't help stright up