
KeylessUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInput = game:GetService("UserInputService")
local player = Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local hrp = char:WaitForChild("HumanoidRootPart")
local humanoid = char:WaitForChild("Humanoid")
local flying = false
local speed = 60
local control = {F=0,B=0,L=0,R=0,U=0,D=0}
local bv, bg
local function startFly()
if flying then return end
flying = true
humanoid.PlatformStand = true
bv = Instance.new("BodyVelocity", hrp)
bv.MaxForce = Vector3.new(1e5,1e5,1e5)
bv.Velocity = Vector3.new()
bg = Instance.new("BodyGyro", hrp)
bg.MaxTorque = Vector3.new(1e5,1e5,1e5)
bg.P = 1e4
bg.CFrame = workspace.CurrentCamera.CFrame
end
local function stopFly()
if not flying then return end
flying = false
humanoid.PlatformStand = false
if bv then bv:Destroy() end
if bg then bg:Destroy() end
end
UserInput.InputBegan:Connect(function(inp, gp)
if gp then return end
local k = inp.KeyCode
if k == Enum.KeyCode.F then startFly()
elseif k == Enum.KeyCode.Q then stopFly()
elseif k == Enum.KeyCode.W then control.F = 1
elseif k == Enum.KeyCode.S then control.B = 1
elseif k == Enum.KeyCode.A then control.L = 1
elseif k == Enum.KeyCode.D then control.R = 1
elseif k == Enum.KeyCode.Space then control.U = 1
elseif k == Enum.KeyCode.LeftControl then control.D = 1
end
end)
UserInput.InputEnded:Connect(function(inp, gp)
if gp then return end
local k = inp.KeyCode
if k == Enum.KeyCode.W then control.F = 0
elseif k == Enum.KeyCode.S then control.B = 0
elseif k == Enum.KeyCode.A then control.L = 0
elseif k == Enum.KeyCode.D then control.R = 0
elseif k == Enum.KeyCode.Space then control.U = 0
elseif k == Enum.KeyCode.LeftControl then control.D = 0
end
end)
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "FlyGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = player:WaitForChild("PlayerGui")
local frame = Instance.new("Frame", screenGui)
frame.Size = UDim2.new(0,200,0,400)
frame.Position = UDim2.new(0,20,1,-420)
frame.BackgroundTransparency = 0.5
frame.BackgroundColor3 = Color3.new(0,0,0)
local function makeBtn(text, pos)
local b = Instance.new("TextButton", frame)
b.Size = UDim2.new(0,60,0,60)
b.Position = pos
b.Text = text
b.TextColor3 = Color3.new(1,1,1)
b.BackgroundColor3 = Color3.fromRGB(40,40,40)
return b
end
local btnFly = makeBtn("Fly", UDim2.new(0,0, 0,0))
local btnLand = makeBtn("Land", UDim2.new(0,70, 0,0))
local btnW = makeBtn("W", UDim2.new(0,70, 0,70))
local btnA = makeBtn("A", UDim2.new(0,0, 0,140))
local btnS = makeBtn("S", UDim2.new(0,70, 0,140))
local btnD = makeBtn("D", UDim2.new(0,140,0,140))
local btnUp = makeBtn("Up", UDim2.new(0,70, 0,210))
local btnDn = makeBtn("Dn", UDim2.new(0,70, 0,280))
local btnInc = makeBtn("+", UDim2.new(0,0, 0,350))
local btnDec = makeBtn("-", UDim2.new(0,70, 0,350))
local lblSpeed = Instance.new("TextLabel", frame)
lblSpeed.Size = UDim2.new(0,60,0,60)
lblSpeed.Position = UDim2.new(0,140,0,350)
lblSpeed.BackgroundTransparency = 1
lblSpeed.TextColor3 = Color3.new(1,1,1)
lblSpeed.Text = tostring(speed)
btnFly.MouseButton1Down:Connect(startFly)
btnLand.MouseButton1Down:Connect(stopFly)
btnW.MouseButton1Down:Connect(function() control.F=1 end)
btnW.MouseButton1Up:Connect( function() control.F=0 end)
btnS.MouseButton1Down:Connect(function() control.B=1 end)
btnS.MouseButton1Up:Connect( function() control.B=0 end)
btnA.MouseButton1Down:Connect(function() control.L=1 end)
btnA.MouseButton1Up:Connect( function() control.L=0 end)
btnD.MouseButton1Down:Connect(function() control.R=1 end)
btnD.MouseButton1Up:Connect( function() control.R=0 end)
btnUp.MouseButton1Down:Connect(function() control.U=1 end)
btnUp.MouseButton1Up:Connect( function() control.U=0 end)
btnDn.MouseButton1Down:Connect(function() control.D=1 end)
btnDn.MouseButton1Up:Connect( function() control.D=0 end)
btnInc.MouseButton1Down:Connect(function()
speed = speed + 10
lblSpeed.Text = tostring(speed)
end)
btnDec.MouseButton1Down:Connect(function()
speed = math.max(10, speed - 10)
lblSpeed.Text = tostring(speed)
end)
RunService.RenderStepped:Connect(function()
if flying and bv and bg then
bg.CFrame = workspace.CurrentCamera.CFrame
local cam = workspace.CurrentCamera.CFrame
local dir = (cam.LookVector * (control.F - control.B)
+ cam.RightVector * (control.R - control.L)
+ Vector3.new(0,1,0) * (control.U - control.D))
if dir.Magnitude > 0 then
bv.Velocity = dir.Unit * speed
else
bv.Velocity = Vector3.new()
end
end
end)No comments yet for this script.

![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)

