-- [[ DESTINO-TRIGGER / HUB V2.2 - OPTIMIZED & RESTORED UI ]] local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local Camera = workspace.CurrentCamera local Mouse = LocalPlayer:GetMouse() -- Optimización de funciones local Vector3_new = Vector3.new local Vector2_new = Vector2.new local math_floor = math.floor -- Variables de Estado local Toggled = true local ESPEnabled = false local FlyEnabled = false local AimbotEnabled = false local FlySpeed = 60 local MaxDistance = 400 -- Caché de entidades local Entities = {} local lastUpdate = 0 -- [[ INTERFAZ ORIGINAL RESTAURADA ]] local ScreenGui = Instance.new("ScreenGui", game.CoreGui) local MainFrame = Instance.new("Frame", ScreenGui) MainFrame.Size = UDim2.new(0, 400, 0, 380) MainFrame.Position = UDim2.new(0.5, -200, 0.5, -190) MainFrame.BackgroundColor3 = Color3.fromRGB(15, 15, 18) MainFrame.Active = true MainFrame.Draggable = true MainFrame.Visible = Toggled Instance.new("UICorner", MainFrame).CornerRadius = UDim.new(0, 15) local Stroke = Instance.new("UIStroke", MainFrame) Stroke.Color = Color3.fromRGB(0, 170, 255) Stroke.Thickness = 3 local Title = Instance.new("TextLabel", MainFrame) Title.Size = UDim2.new(1, 0, 0, 70) Title.Text = "Destino-Trigger / HUB v2" Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.BackgroundTransparency = 1 Title.Font = Enum.Font.GothamBold Title.TextSize = 26 local List = Instance.new("ScrollingFrame", MainFrame) List.Size = UDim2.new(1, -30, 1, -90) List.Position = UDim2.new(0, 15, 0, 80) List.BackgroundTransparency = 1 List.ScrollBarThickness = 0 local Layout = Instance.new("UIListLayout", List) Layout.Padding = UDim.new(0, 12) local function NewButton(name, callback) local btn = Instance.new("TextButton", List) btn.Size = UDim2.new(1, 0, 0, 60) btn.BackgroundColor3 = Color3.fromRGB(30, 30, 35) btn.TextColor3 = Color3.fromRGB(255, 255, 255) btn.Text = name btn.Font = Enum.Font.GothamBold btn.TextSize = 20 Instance.new("UICorner", btn) local active = false btn.MouseButton1Click:Connect(function() active = not active btn.BackgroundColor3 = active and Color3.fromRGB(0, 170, 255) or Color3.fromRGB(30, 30, 35) callback(active) end) end -- [[ LÓGICA DE ACTUALIZACIÓN DE ENTIDADES ]] local function UpdateEntities() local newList = {} for _, v in pairs(workspace:GetDescendants()) do if v:IsA("Humanoid") and v.Parent ~= LocalPlayer.Character then local hrp = v.Parent:FindFirstChild("HumanoidRootPart") if hrp then table.insert(newList, {Hum = v, Char = v.Parent, HRP = hrp}) end end end Entities = newList end -- [[ LÓGICA DE ESP ]] local function CreateESP(parent) local bill = parent:FindFirstChild("GeminiESP") if bill then return bill end bill = Instance.new("BillboardGui", parent) bill.Name = "GeminiESP" bill.Size = UDim2.new(0, 200, 0, 50) bill.AlwaysOnTop = true bill.ExtentsOffset = Vector3_new(0, 3, 0) local txt = Instance.new("TextLabel", bill) txt.Name = "TextLabel" txt.Size = UDim2.new(1, 0, 1, 0) txt.BackgroundTransparency = 1 txt.TextColor3 = Color3.new(1, 1, 1) txt.TextSize = 14 txt.Font = Enum.Font.GothamBold txt.TextStrokeTransparency = 0 return bill end -- Botones NewButton("🎯 AIMBOT (R-CLIC)", function(v) AimbotEnabled = v end) NewButton("👁 ESP (400m + BOTS)", function(v) ESPEnabled = v end) NewButton("🚀 VUELO (CÁMARA)", function(v) FlyEnabled = v end) -- [[ BUCLE DE RENDERIZADO ]] RunService.RenderStepped:Connect(function() local MyChar = LocalPlayer.Character if not MyChar or not MyChar:FindFirstChild("HumanoidRootPart") then return end local MyPos = MyChar.HumanoidRootPart.Position -- Actualizar caché cada 2 seg para fluidez if tick() - lastUpdate > 2 then UpdateEntities() lastUpdate = tick() end local targetAimbot = nil local closestMouse = 400 for i = 1, #Entities do local data = Entities[i] if data.Char and data.Char.Parent and data.Hum.Health > 0 then local dist = (data.HRP.Position - MyPos).Magnitude -- ESP con filtro de 400m if ESPEnabled then local esp = data.Char:FindFirstChild("GeminiESP") or CreateESP(data.Char) if dist <= MaxDistance then esp.Enabled = true local plr = Players:GetPlayerFromCharacter(data.Char) local name = plr and plr.Name or "[BOT] " .. data.Char.Name esp.TextLabel.Text = string.format("%s\n[%dm]", name, math_floor(dist)) esp.TextLabel.TextColor3 = (plr and plr.TeamColor) and plr.TeamColor.Color or Color3.fromRGB(255, 170, 0) else esp.Enabled = false end end -- Aimbot con filtro de 400m if AimbotEnabled and dist <= MaxDistance and UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton2) then local head = data.Char:FindFirstChild("Head") if head then local pos, onScreen = Camera:WorldToViewportPoint(head.Position) if onScreen then local mouseMag = (Vector2_new(pos.X, pos.Y) - Vector2_new(Mouse.X, Mouse.Y)).Magnitude if mouseMag < closestMouse then targetAimbot = head closestMouse = mouseMag end end end end end end if targetAimbot then Camera.CFrame = CFrame.new(Camera.CFrame.Position, targetAimbot.Position) end if FlyEnabled then local HRP = MyChar.HumanoidRootPart MyChar.Humanoid.PlatformStand = true local moveDir = Vector3_new(0,0,0) if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + Camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - Camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - Camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + Camera.CFrame.RightVector end HRP.Velocity = moveDir * FlySpeed elseif MyChar:FindFirstChild("Humanoid") and MyChar.Humanoid.PlatformStand then MyChar.Humanoid.PlatformStand = false end end) -- Toggle Menu (Right Control) UserInputService.InputBegan:Connect(function(i, g) if not g and i.KeyCode == Enum.KeyCode.RightControl then Toggled = not Toggled MainFrame.Visible = Toggled end end)