-- SERVICES local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") -- PLAYER local player = Players.LocalPlayer local char = player.Character or player.CharacterAdded:Wait() local humanoid = char:WaitForChild("Humanoid") local hrp = char:WaitForChild("HumanoidRootPart") -- SETTINGS local flying = false local noclip = false local flySpeed = 60 local walkSpeed = 16 -- SPEED humanoid.WalkSpeed = walkSpeed -- FLY local bodyGyro, bodyVelocity function startFly() flying = true bodyGyro = Instance.new("BodyGyro", hrp) bodyGyro.P = 9e4 bodyGyro.maxTorque = Vector3.new(9e9, 9e9, 9e9) bodyGyro.cframe = hrp.CFrame bodyVelocity = Instance.new("BodyVelocity", hrp) bodyVelocity.velocity = Vector3.zero bodyVelocity.maxForce = Vector3.new(9e9, 9e9, 9e9) RunService.RenderStepped:Connect(function() if flying then bodyGyro.cframe = workspace.CurrentCamera.CFrame bodyVelocity.velocity = workspace.CurrentCamera.CFrame.LookVector * flySpeed end end) end function stopFly() flying = false if bodyGyro then bodyGyro:Destroy() end if bodyVelocity then bodyVelocity:Destroy() end end -- NOCLIP RunService.Stepped:Connect(function() if noclip then for _, v in pairs(char:GetDescendants()) do if v:IsA("BasePart") then v.CanCollide = false end end end end) -- TELEPORT (Mouse Click) local mouse = player:GetMouse() mouse.Button1Down:Connect(function() if UserInputService:IsKeyDown(Enum.KeyCode.T) then hrp.CFrame = CFrame.new(mouse.Hit.Position + Vector3.new(0,3,0)) end end) -- KEYBINDS UserInputService.InputBegan:Connect(function(input, gpe) if gpe then return end if input.KeyCode == Enum.KeyCode.F then if flying then stopFly() else startFly() end end if input.KeyCode == Enum.KeyCode.N then noclip = not noclip end if input.KeyCode == Enum.KeyCode.Equals then -- + walkSpeed += 5 humanoid.WalkSpeed = walkSpeed end if input.KeyCode == Enum.KeyCode.Minus then -- - walkSpeed -= 5 humanoid.WalkSpeed = walkSpeed end end)