How do i disable a players movenment(for a camera mapulation)

ok so basically i made that,what you see below,but heres the thing i dont want the player to move because the camera wont follow player,plus i want it to look professional,i tryed looking on wiki

1 Like

Let’s list them up:

2 Likes

Set the Player’s walk speed to 0 until you want them to walk again.

https://developer.roblox.com/en-us/api-reference/property/Humanoid/WalkSpeed

Please make sure that a topic doesn’t already exist before you post.
Thanks!

https://devforum.roblox.com/t/how-to-disable-player-movement/235833

1 Like

You could also actively lerp to the character’s position every frame instead of using something like Camera:Interpolate :link:, if you are using it:

So instead of:

local root = -- humanoid root part
local duration = 2

local newCFrame = CFrame.new(root.Position) --[[* some other variables]]

Camera:Interpolate(newCFrame, duration)

You would do:

local RunService = game:GetService("RunService")

local root = -- humanoid root part
lcoal duration = 2

local lastCFrame = Camera.CFrame
local i = 0
local conn
conn = RunService.RenderStepped:Connect(function(dt)
	i = math.min(i + dt/duration, 1)

	if i < 1 then -- if tween isn't finished,

		local newCFrame = CFrame.new(root.Position) --[[* some other variables]]
		Camera.CFrame = lastCFrame:Lerp(newCFrame, i) -- update camera

	else -- if tween is finished,

		conn:Disconnect() -- stop updating camera
		ReturnControlToPlayer() -- pseudocode

	end
end)

This allows for the camera to return to the user no matter where (s)he is instead of just arriving to a single spot. Hopefully it helps remove any clunkiness from having to remove movement from the character. Of course, this is your choice; you have already found a solution by the looks of it.

2 Likes