local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer local camera = workspace.CurrentCamera local isBodyCamActive = false local head = nil local humanoid = nil local function createBodyCamButton() local function waitForPlayerGui() local gui = player:FindFirstChildOfClass("PlayerGui") while not gui do player.ChildAdded:Wait() gui = player:FindFirstChildOfClass("PlayerGui") end return gui end local playerGui = waitForPlayerGui() local screenGui = Instance.new("ScreenGui") screenGui.Name = "BodyCamGui" screenGui.ResetOnSpawn = false screenGui.IgnoreGuiInset = false screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling screenGui.Parent = playerGui local button = Instance.new("TextButton") button.Name = "ToggleBodyCamButton" button.Size = UDim2.new(0, 220, 0, 50) button.Position = UDim2.new(1, -230, 0, 20) button.AnchorPoint = Vector2.new(0, 0) button.Text = "Toggle Bodycam (if you're on mobile)" button.BackgroundColor3 = Color3.fromRGB(0, 0, 0) button.TextColor3 = Color3.fromRGB(255, 255, 255) button.BackgroundTransparency = 0.3 button.Font = Enum.Font.SourceSansBold button.TextScaled = true button.Parent = screenGui button.MouseButton1Click:Connect(function() toggleBodyCam() end) end function enableBodyCam() if not head then return end camera.CameraType = Enum.CameraType.Scriptable RunService:BindToRenderStep("BodyCamView", Enum.RenderPriority.Camera.Value + 1, function() if head and head.Parent then camera.CFrame = head.CFrame end end) isBodyCamActive = true end function disableBodyCam() RunService:UnbindFromRenderStep("BodyCamView") camera.CameraType = Enum.CameraType.Custom isBodyCamActive = false end function toggleBodyCam() if isBodyCamActive then disableBodyCam() else enableBodyCam() end end function onHumanoidDied() disableBodyCam() end function onCharacterAdded(character) head = character:WaitForChild("Head") humanoid = character:WaitForChild("Humanoid") humanoid.Died:Connect(onHumanoidDied) disableBodyCam() end UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if input.KeyCode == Enum.KeyCode.F then toggleBodyCam() end end) if player.Character then onCharacterAdded(player.Character) end player.CharacterAdded:Connect(onCharacterAdded) createBodyCamButton()