I have a script to make the player only look left and right by changing the position of the humanoid to the camera's left and right vector. The problem with my script is that it changes the character from left to right instantly, which looks off. Is there a way I can slow it down, or smooth it? Here's my script
local keyA = false
local keyD = false
game:GetService("UserInputService").InputBegan:connect(function(inputObject, gameProcessedEvent)
if inputObject.KeyCode == Enum.KeyCode.D then
keyD = true
elseif inputObject.KeyCode == Enum.KeyCode.A then
keyA = true
end
end)
game:GetService("UserInputService").InputEnded:connect(function(inputObject, gameProcessedEvent)
if inputObject.KeyCode == Enum.KeyCode.D then
keyD = false
elseif inputObject.KeyCode == Enum.KeyCode.A then
keyA = false
end
end)
spawn(function()
while true do wait ()
if keyA == true and keyD == false then
root.CFrame = CFrame.new(root.Position, root.Position - camera.CFrame.RightVector)
elseif keyA == false and keyD == true then
root.CFrame = CFrame.new(root.Position, root.Position + camera.CFrame.RightVector)
end
end
end)
