of couse it wouldn’t, you’re in lockfirstperson. Only way to “ShiftLock” is an alternative in firstperson is getting Humanoid.CameraOffset
on the client side and moving the X vector to 1.75
Example
-- //Services
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
-- //TweenService
local TweenInfo = TweenInfo.new(0.25, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut, 0, false, 0)
-- //Player
local player = Players.LocalPlayer
-- //Character
local character = player.Character or player.CharacterAdded:Wait()
-- //Humanoid
local Humanoid = character:FindFirstChild("Humanoid")
-- //Debounce
local Debounce = false
-- //Tweens
local TweenIn = TweenService:Create(Humanoid, TweenInfo, {CameraOffset = Vector3.new(1.75, 0, 0)})
local TweenOut = TweenService:Create(Humanoid, TweenInfo, {CameraOffset = Vector3.new(0, 0, 0)})
UserInputService.InputBegan:Connect(function(input: InputObject, gameProcessedEvent: boolean)
if input.KeyCode == Enum.KeyCode.LeftShift or input.KeyCode == Enum.KeyCode.RightShift then
if not Debounce then
-- //
Debounce = true
TweenIn:Play()
TweenIn.Completed:Wait()
else
-- //
Debounce = false
TweenOut:Play()
TweenOut.Completed:Wait()
end
end
end)