
KeylessUniversal

-- LocalScript (put in StarterPlayerScripts)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local hrp = character:WaitForChild("HumanoidRootPart")
local hum = character:WaitForChild("Humanoid")
-- UI button
local gui = Instance.new("ScreenGui")
gui.ResetOnSpawn = false
gui.Parent = player:WaitForChild("PlayerGui")
local button = Instance.new("TextButton")
button.Size = UDim2.new(0,120,0,40)
button.Position = UDim2.new(0,10,0.8,0)
button.Text = "Enable"
button.BackgroundTransparency = 0.25
button.Parent = gui
-- flight helpers
local flying = false
local speed = 80
local bv = Instance.new("BodyVelocity")
bv.MaxForce = Vector3.new(1e5,1e5,1e5)
bv.P = 1e4
bv.Velocity = Vector3.zero
bv.Enabled = false
bv.Parent = hrp
local bg = Instance.new("BodyGyro")
bg.MaxTorque = Vector3.new(1e5,1e5,1e5)
bg.P = 1e4
bg.CFrame = hrp.CFrame
bg.Enabled = false
bg.Parent = hrp
local function setCollide(state)
for _,p in ipairs(character:GetDescendants()) do
if p:IsA("BasePart") then p.CanCollide = state end
end
end
local dir = Vector3.zero
local function updateDir()
dir = Vector3.zero
if UIS:IsKeyDown(Enum.KeyCode.W) then dir += hrp.CFrame.LookVector end
if UIS:IsKeyDown(Enum.KeyCode.S) then dir -= hrp.CFrame.LookVector end
if UIS:IsKeyDown(Enum.KeyCode.A) then dir -= hrp.CFrame.RightVector end
if UIS:IsKeyDown(Enum.KeyCode.D) then dir += hrp.CFrame.RightVector end
if UIS:IsKeyDown(Enum.KeyCode.Space) then dir += Vector3.new(0,1,0) end
if UIS:IsKeyDown(Enum.KeyCode.LeftControl) then dir -= Vector3.new(0,1,0) end
if dir.Magnitude > 0 then
dir = dir.Unit * speed
end
end
RunService.RenderStepped:Connect(function()
if flying then
updateDir()
bv.Velocity = dir
bg.CFrame = workspace.CurrentCamera.CFrame
end
end)
local function toggleFly()
flying = not flying
button.Text = flying and "Disable" or "Enable"
bv.Enabled = flying
bg.Enabled = flying
setCollide(not flying)
hum.PlatformStand = flying
end
button.MouseButton1Click:Connect(toggleFly)No comments yet for this script.



