Run it
Copy the script and paste it into your executor.
local player = game.Players.LocalPlayer
local UIS = game:GetService("UserInputService")
local mouse = player:GetMouse()
local char = player.Character or player.CharacterAdded:Wait()
local root = char:WaitForChild("HumanoidRootPart")
local cam = workspace.CurrentCamera
local angle = 45
local waitTime = 0.1
local function rotateY(part, delta)
local ori = part.Orientation
part.Orientation = Vector3.new(ori.X, ori.Y + delta, ori.Z)
wait(waitTime)
part.Orientation = ori
end
local function rotateCamera(delta)
cam.CFrame = cam.CFrame * CFrame.Angles(0, math.rad(delta), 0)
wait(waitTime)
cam.CFrame = cam.CFrame * CFrame.(, .(-delta), )
mouse.Button1Down:(()
UIS.MouseBehavior == .MouseBehavior.LockCenter
(angle)
(root, angle)
)
mouse.Button2Down:(()
UIS.MouseBehavior == .MouseBehavior.LockCenter
(-angle)
(root, -angle)
)
left click to turn 45* right click to turn -45*

Universal