
Key Required Verified

-- Delta Executor Mobile - Fly + Walkspeed 800
-- Activa vuelo y velocidad al ejecutar
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local RootPart = Character:WaitForChild("HumanoidRootPart")
-- Configuración
local WALKSPEED = 800
local FLY_SPEED = 80
local FLY_SPEED_UP = 80
-- Variables de vuelo
local flying = false
local flyVelocity = Vector3.new(0, 0, 0)
local bodyVelocity = nil
local bodyGyro = nil
-- Función para activar vuelo
local function EnableFly()
if flying then return end
flying = true
-- Crear BodyVelocity para movimiento
bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.Velocity = Vector3.new(0, 0, 0)
bodyVelocity.MaxForce = Vector3.new(1e9, 1e9, 1e9)
bodyVelocity.Parent = RootPart
-- Crear BodyGyro para estabilizar
bodyGyro = Instance.new("BodyGyro")
bodyGyro.MaxTorque = Vector3.new(1e9, 1e9, 1e9)
bodyGyro.CFrame = RootPart.CFrame
bodyGyro.Parent = RootPart
print("[FLY] Vuelo activado")
end
-- Función para desactivar vuelo
local function DisableFly()
if not flying then return end
flying = false
if bodyVelocity then
bodyVelocity:Destroy()
bodyVelocity = nil
end
if bodyGyro then
bodyGyro:Destroy()
bodyGyro = nil
end
print("[FLY] Vuelo desactivado")
end
-- Función para actualizar vuelo
local function UpdateFly()
if not flying or not RootPart or not bodyVelocity then return end
-- Obtener dirección de la cámara
local camera = workspace.CurrentCamera
local cameraCFrame = camera.CFrame
-- Obtener input del teclado/móvil
local moveDirection = Vector3.new(0, 0, 0)
-- WASD (PC) y toques (móvil) - usando UserInputService
if UserInputService:IsKeyDown(Enum.KeyCode.W) then
moveDirection = moveDirection + cameraCFrame.LookVector * Vector3.new(1, 0, 1)
end
if UserInputService:IsKeyDown(Enum.KeyCode.S) then
moveDirection = moveDirection - cameraCFrame.LookVector * Vector3.new(1, 0, 1)
end
if UserInputService:IsKeyDown(Enum.KeyCode.A) then
moveDirection = moveDirection - cameraCFrame.RightVector * Vector3.new(1, 0, 1)
end
if UserInputService:IsKeyDown(Enum.KeyCode.D) then
moveDirection = moveDirection + cameraCFrame.RightVector * Vector3.new(1, 0, 1)
end
-- Espacio para subir / Shift para bajar (PC)
if UserInputService:IsKeyDown(Enum.KeyCode.Space) then
moveDirection = moveDirection + Vector3.new(0, 1, 0)
end
if UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then
moveDirection = moveDirection + Vector3.new(0, -1, 0)
end
-- Si no hay dirección, mantener velocidad cero
if moveDirection.Magnitude > 0 then
moveDirection = moveDirection.Unit
end
-- Velocidad final
local velocity = moveDirection * FLY_SPEED
bodyVelocity.Velocity = velocity
-- Orientación hacia la dirección de movimiento
if moveDirection.Magnitude > 0.1 then
bodyGyro.CFrame = CFrame.new(RootPart.Position, RootPart.Position + moveDirection)
end
end
-- Conectar actualización
local flyConnection = RunService.Heartbeat:Connect(UpdateFly)
-- === TOGGLE FLY CON TECLA "F" (PC) O DOBLE TAP EN MÓVIL ===
local lastTapTime = 0
local function ToggleFly()
if flying then
DisableFly()
else
EnableFly()
end
end
-- Tecla F para toggle
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
if input.KeyCode == Enum.KeyCode.F then
ToggleFly()
end
end)
-- Doble tap en pantalla para toggle (móvil)
local touchCount = 0
local touchTimer = 0
UserInputService.TouchStarted:Connect(function(touch)
if tick() - touchTimer < 0.5 then
touchCount = touchCount + 1
if touchCount >= 2 then
ToggleFly()
touchCount = 0
end
else
touchCount = 1
end
touchTimer = tick()
end)
-- === MODIFICAR WALKSPEED ===
local function SetWalkSpeed(speed)
if Humanoid then
Humanoid.WalkSpeed = speed
print("[WALKSPEED] WalkSpeed cambiado a " .. speed)
end
end
-- Aplicar walkspeed
SetWalkSpeed(WALKSPEED)
-- Reaplicar si el personaje respawn
LocalPlayer.CharacterAdded:Connect(function(newChar)
Character = newChar
RootPart = Character:WaitForChild("HumanoidRootPart")
Humanoid = Character:WaitForChild("Humanoid")
-- Reaplicar walkspeed
task.wait(0.5)
SetWalkSpeed(WALKSPEED)
-- Si estaba volando, reiniciar
if flying then
DisableFly()
task.wait(0.1)
EnableFly()
end
end)
-- === GUI SIMPLE ===
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "FlySpeedGUI"
ScreenGui.Parent = game.CoreGui
ScreenGui.ResetOnSpawn = false
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 280, 0, 150)
MainFrame.Position = UDim2.new(0.5, -140, 0.5, -75)
MainFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
MainFrame.BackgroundTransparency = 0.15
MainFrame.BorderSizePixel = 0
MainFrame.Visible = true
MainFrame.Active = true
MainFrame.Parent = ScreenGui
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 10)
MainCorner.Parent = MainFrame
local TitleText = Instance.new("TextLabel")
TitleText.Size = UDim2.new(1, 0, 0, 35)
TitleText.Position = UDim2.new(0, 0, 0, 0)
TitleText.BackgroundColor3 = Color3.fromRGB(35, 35, 50)
TitleText.Text = "FLY + WALKSPEED 800"
TitleText.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleText.Font = Enum.Font.GothamBold
TitleText.TextSize = 16
TitleText.Parent = MainFrame
local TitleCorner = Instance.new("UICorner")
TitleCorner.CornerRadius = UDim.new(0, 10)
TitleCorner.Parent = TitleText
-- Botón toggle
local ToggleFlyBtn = Instance.new("TextButton")
ToggleFlyBtn.Size = UDim2.new(0, 200, 0, 45)
ToggleFlyBtn.Position = UDim2.new(0.5, -100, 0.45, 0)
ToggleFlyBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 200)
ToggleFlyBtn.Text = "ACTIVAR VUELO (F)"
ToggleFlyBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
ToggleFlyBtn.Font = Enum.Font.GothamBold
ToggleFlyBtn.TextSize = 14
ToggleFlyBtn.Parent = MainFrame
local BtnCorner = Instance.new("UICorner")
BtnCorner.CornerRadius = UDim.new(0, 8)
BtnCorner.Parent = ToggleFlyBtn
-- Estado actual
local StatusLabel = Instance.new("TextLabel")
StatusLabel.Size = UDim2.new(1, 0, 0, 20)
StatusLabel.Position = UDim2.new(0, 0, 0.8, 0)
StatusLabel.BackgroundTransparency = 1
StatusLabel.Text = "WalkSpeed: 800 | Vuelo: OFF"
StatusLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
StatusLabel.Font = Enum.Font.Gotham
StatusLabel.TextSize = 12
StatusLabel.Parent = MainFrame
-- Botón cerrar
local CloseBtn = Instance.new("TextButton")
CloseBtn.Size = UDim2.new(0, 30, 0, 30)
CloseBtn.Position = UDim2.new(1, -35, 0, 3)
CloseBtn.BackgroundColor3 = Color3.fromRGB(180, 0, 0)
CloseBtn.Text = "X"
CloseBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseBtn.Font = Enum.Font.GothamBold
CloseBtn.TextSize = 16
CloseBtn.Parent = TitleText
-- Actualizar estado cada segundo
local function UpdateStatus()
local flyStatus = flying and "ON" or "OFF"
local flyColor = flying and "Verde" or "Rojo"
StatusLabel.Text = "WalkSpeed: 800 | Vuelo: " .. flyStatus
StatusLabel.TextColor3 = flying and Color3.fromRGB(0, 255, 0) or Color3.fromRGB(255, 100, 100)
end
task.spawn(function()
while scriptActive do
UpdateStatus()
task.wait(0.5)
end
end)
-- Eventos
ToggleFlyBtn.MouseButton1Click:Connect(function()
ToggleFly()
UpdateStatus()
if flying then
ToggleFlyBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 0)
ToggleFlyBtn.Text = "DESACTIVAR VUELO"
else
ToggleFlyBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 200)
ToggleFlyBtn.Text = "ACTIVAR VUELO (F)"
end
end)
CloseBtn.MouseButton1Click:Connect(function()
ScreenGui:Destroy()
end)
-- Variable para control de limpieza
local scriptActive = true
-- Limpiar al cerrar
ScreenGui.AncestryChanged:Connect(function()
if not ScreenGui.Parent then
scriptActive = false
DisableFly()
if flyConnection then flyConnection:Disconnect() end
print("[FLY] Script cerrado")
end
end)
-- Aplicar velocidad inicial
SetWalkSpeed(WALKSPEED)
print("=== FLY + WALKSPEED 800 CARGADO ===")
print("Presiona F o doble toque en pantalla para activar/desactivar vuelo")
print("WalkSpeed establecido a 800")No comments yet for this script.
