local E={FirstPersonIcon="\114\098\120\097\115\115\101\116\105\100\058\047\047\053\051\056\048\050\050\056\054\050\056";ThirdPersonIcon="\114\098\120\097\115\115\101\116\105\100\058\047\047\053\051\056\048\050\051\052\050\048\050"}local z=game:GetService("\080\108\097\121\101\114\115")local a=workspace.CurrentCamera local L=z.LocalPlayer.Character:WaitForChild("\072\101\097\100")local Y=z.LocalPlayer:GetMouse()local function m()return(L.CFrame.p-a.CFrame.p).Magnitude<1 end;(game:GetService("\082\117\110\083\101\114\118\105\099\101")).Heartbeat:Connect(function()if not m()then Y.Icon=E.ThirdPersonIcon elseif m()then Y.Icon=E.FirstPersonIcon end end)
local ICONS = {
	FirstPersonIcon = "rbxassetid://5380228628",
	ThirdPersonIcon = "rbxassetid://5380234202"
}

local Players = game:GetService("Players")

local camera = workspace.CurrentCamera
local head = Players.LocalPlayer.Character:WaitForChild("Head")
local mouse = Players.LocalPlayer:GetMouse()

local function IsFirstPerson()
     return (head.CFrame.p - camera.CFrame.p).Magnitude < 1
end

game:GetService("RunService").Heartbeat:Connect(function()
	if not IsFirstPerson() then
		mouse.Icon = ICONS.ThirdPersonIcon
	elseif IsFirstPerson() then
		mouse.Icon = ICONS.FirstPersonIcon
	end
end)
