Run it
Copy the script and paste it into your executor.
LMG2L = {};
LMG2L[] = .(, :().LocalPlayer:());
LMG2L[][] = .ZIndexBehavior.Sibling;
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = .(, , , );
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = .(, , , );
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal);
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal);
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[] = .(, LMG2L[]);
LMG2L[] = .(, LMG2L[]);
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal);
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = .(, , , );
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal);
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[] = .(, LMG2L[]);
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = ;
LMG2L[][] = .(, , );
LMG2L[][] = Font.(, .FontWeight.Regular, .FontStyle.Normal);
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[][] = ;
LMG2L[][] = .(, , , );
LMG2L[] = .(, LMG2L[]);
()
= LMG2L[];
button = .Parent
sound = .()
sound.Name =
sound.SoundId =
sound.Volume =
sound.Looped =
sound.Parent = :()
isOn =
button.MouseButton1Click:(()
isOn = isOn
isOn
button.Text =
sound:()
button.Text =
sound:()
)
;
.(C_6);
()
= LMG2L[];
Players = :()
RunService = :()
UserInputService = :()
player = Players.LocalPlayer
character = player.Character player.CharacterAdded:()
humanoid = character:()
rootPart = character:()
camera = .CurrentCamera
playerGui = player:()
button = .Parent
isArmed =
DRONE_SPEED =
THROTTLE_POWER =
BASE_LIFT =
TURN_RATE =
MOUSE_SENS =
DRAG =
GRAVITY = .(, -, )
ANGULAR_DAMP =
drone = .()
drone.Name =
drone.Size = .(, , )
drone.Anchored =
drone.CanCollide =
drone.Material = .Material.Metal
drone.Color = .(, , )
drone.Parent =
fanSound = .()
fanSound.Name =
fanSound.SoundId =
fanSound.Volume =
fanSound.Looped =
fanSound.Parent = drone
velocity = .zero
angularVel = .zero
throttle =
pitchInput, rollInput, yawInput = , ,
strafeInput =
forwardInput =
connection
mobileGui
originalCameraType
originalCameraSubject
rayParams = RaycastParams.()
rayParams.FilterType = .RaycastFilterType.Exclude
rayParams.FilterDescendantsInstances = {drone, character}
()
mobileGui mobileGui:()
mobileGui = .()
mobileGui.Name =
mobileGui.ResetOnSpawn =
mobileGui.ZIndexBehavior = .ZIndexBehavior.Sibling
mobileGui.Parent = playerGui
(text, position, size)
btn = .()
btn.Size = size
btn.Position = position
btn.BackgroundColor3 = .(, , )
btn.BackgroundTransparency =
btn.Text = text
btn.TextColor3 = .(, , )
btn.TextTransparency =
btn.TextStrokeTransparency =
btn.TextStrokeColor3 = .(, , )
btn.Font = .Font.GothamBold
btn.TextSize =
btn.BorderSizePixel =
btn.AutoButtonColor =
btn.Parent = mobileGui
btn
camBack = (, .(, , , ), .(, , , ))
camForward = (, .(, , , ), .(, , , ))
dpadUp = (, .(, , , ), .(, , , ))
dpadLeft = (, .(, , , ), .(, , , ))
dpadRight = (, .(, , , ), .(, , , ))
dpadDown = (, .(, , , ), .(, , , ))
crabLeft = (, .(, , , ), .(, , , ))
crabRight = (, .(, , , ), .(, , , ))
thrustUp = (, .(, , , ), .(, , , ))
thrustDown = (, .(, , , ), .(, , , ))
(btn, press, release)
btn.MouseButton1Down:(press)
btn.MouseButton1Up:(release)
btn.MouseLeave:(release)
(dpadUp, () pitchInput = , () pitchInput = )
(dpadDown, () pitchInput = - , () pitchInput = )
(dpadLeft, () yawInput = , () yawInput = )
(dpadRight, () yawInput = - , () yawInput = )
(camForward, () forwardInput = , () forwardInput = )
(camBack, () forwardInput = - , () forwardInput = )
(crabLeft, () strafeInput = - , () strafeInput = )
(crabRight, () strafeInput = , () strafeInput = )
(thrustUp, () throttle = , () throttle = )
(thrustDown, () throttle = - , () throttle = )
()
isArmed
isArmed =
humanoid.WalkSpeed =
humanoid.JumpPower =
humanoid.PlatformStand =
rootPart.Anchored =
drone.CFrame = rootPart.CFrame * .(, , )
originalCameraType = camera.CameraType
originalCameraSubject = camera.CameraSubject
camera.CameraType = .CameraType.Scriptable
fanSound:()
UserInputService.TouchEnabled
()
(input, processed)
processed
input.UserInputType == .UserInputType.Keyboard
input.KeyCode == .KeyCode.W pitchInput =
input.KeyCode == .KeyCode.S pitchInput = -
input.KeyCode == .KeyCode.A rollInput = -
input.KeyCode == .KeyCode.D rollInput =
input.KeyCode == .KeyCode.Q yawInput =
input.KeyCode == .KeyCode.E yawInput = -
input.KeyCode == .KeyCode.Space throttle =
input.KeyCode == .KeyCode.LeftShift throttle = -
input.KeyCode == .KeyCode.R forwardInput =
input.KeyCode == .KeyCode.F forwardInput = -
input.KeyCode == .KeyCode.Z strafeInput = -
input.KeyCode == .KeyCode.C strafeInput =
(input)
input.UserInputType == .UserInputType.Keyboard
input.KeyCode == .KeyCode.W input.KeyCode == .KeyCode.S pitchInput =
input.KeyCode == .KeyCode.A input.KeyCode == .KeyCode.D rollInput =
input.KeyCode == .KeyCode.Q input.KeyCode == .KeyCode.E yawInput =
input.KeyCode == .KeyCode.Space input.KeyCode == .KeyCode.LeftShift throttle =
input.KeyCode == .KeyCode.R input.KeyCode == .KeyCode.F forwardInput =
input.KeyCode == .KeyCode.Z input.KeyCode == .KeyCode.C strafeInput =
UserInputService.InputBegan:(onInput)
UserInputService.InputEnded:(onInputEnded)
connection = RunService.RenderStepped:((dt)
isArmed
UserInputService.TouchEnabled
mouseDelta = UserInputService:()
angularVel = angularVel + .(
-mouseDelta.Y * MOUSE_SENS,
-mouseDelta.X * MOUSE_SENS,
mouseDelta.X * MOUSE_SENS *
)
angularVel = angularVel + .(
pitchInput * TURN_RATE * dt,
yawInput * TURN_RATE * dt,
rollInput * TURN_RATE * dt
)
angularVel = angularVel * ANGULAR_DAMP
rot = .(angularVel.X, angularVel.Y, angularVel.Z)
drone.CFrame = drone.CFrame * rot
totalLift = BASE_LIFT + (throttle * THROTTLE_POWER)
upForce = drone.CFrame.UpVector * totalLift
forwardForce = drone.CFrame.LookVector * (forwardInput * )
strafeForce = drone.CFrame.RightVector * (strafeInput * )
velocity = (velocity + upForce * dt + GRAVITY * dt + forwardForce * dt + strafeForce * dt) * DRAG
velocity.Magnitude > DRONE_SPEED
velocity = velocity.Unit * DRONE_SPEED
move = velocity * dt
result = :(drone.Position, move, rayParams)
result
normal = result.Normal
velocity = velocity - * velocity:(normal) * normal *
move = velocity * dt
drone.CFrame = drone.CFrame + move
camera.CFrame = drone.CFrame * .(, , )
speedFactor = .(velocity.Magnitude / , , )
fanSound.PlaybackSpeed = speedFactor
fanSound.Volume = + (speedFactor * )
)
button.MouseButton1Click:(armDrone)
;
.(C_d);
LMG2L[], ;