Run it
Copy the script and paste it into your executor.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local mouse = player:()
screenGui = .(, player:())
screenGui.ResetOnSpawn =
screenGui.Name =
(name, position, size, text, parent)
btn = .()
btn.Name = name
btn.Size = size
btn.Position = position
btn.Text = text
btn.Parent = parent
btn.BackgroundColor3 = .(, , )
btn.BorderColor3 = .(, , )
btn.TextColor3 = .(, , )
btn.TextScaled =
btn.AutoButtonColor =
btn
flyButton = (, .(, -, , -), .(, , , ), , screenGui)
flyButton.Active =
flyButton.Draggable =
arrowSize = .(, , , )
arrowGui = .(, screenGui)
arrowGui.Size = .(, , , )
arrowGui.Position = .(, -, , -)
arrowGui.BackgroundTransparency =
directions = {
Up = {pos = .(, -, , ), symbol = },
Down = {pos = .(, -, , -), symbol = },
Left = {pos = .(, , , -), symbol = },
Right = {pos = .(, -, , -), symbol = },
}
moveInput = {
Up = ,
Down = ,
Left = ,
Right =
}
dir, info (directions)
btn = (dir.., info.pos, arrowSize, info.symbol, arrowGui)
btn.BackgroundColor3 = .(, , )
btn.BorderColor3 = .(, , )
btn.TextColor3 = .(, , )
btn.MouseButton1Down:(() moveInput[dir] = )
btn.MouseButton1Up:(() moveInput[dir] = )
btn.MouseLeave:(() moveInput[dir] = )
flying =
flySpeed =
bodyVelocity
()
char = player.Character player.CharacterAdded:()
hrp = char:()
bodyVelocity = .()
bodyVelocity.Velocity = .zero
bodyVelocity.MaxForce = .(, , )
bodyVelocity.Parent = hrp
flying =
flying
cam = .CurrentCamera
direction = .zero
moveInput.Up direction += cam.CFrame.LookVector
moveInput.Down direction -= cam.CFrame.LookVector
moveInput.Left direction -= cam.CFrame.RightVector
moveInput.Right direction += cam.CFrame.RightVector
direction.Magnitude >
bodyVelocity.Velocity = direction.Unit * flySpeed
bodyVelocity.Velocity = .zero
.()
bodyVelocity:()
flyButton.MouseButton1Click:(()
flying
flying =
flyButton.Text =
flyButton.Text =
()
)Fly

Universal