Infinite yield plus
Key RequiredUniversal

Infinite yield plus

Universal ScriptGlodonGlodon 595 views 6.1K executesUpdated Aug 24, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•920 lines (35075 chars)
-- Variables Principales
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local CoreGui = game:GetService("CoreGui")
local HttpService = game:GetService("HttpService")
local TeleportService = game:GetService("TeleportService")
local Lighting = game:GetService("Lighting")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera

-- Variables de Estado y Configuración
local noclipConnection, flyConnection, infJumpConnection, antiAfkConnection
local isFlying = false
local flySpeed = 50
local Keybinds = {}
local Commands = {}
local CustomCommandsInfo = {}
local activeProblemBlur = nil
local topCmdBarTimer = nil

-- Tema: Negro & Azul Marino
local NavyColor = Color3.fromRGB(15, 35, 75)
local BlackColor = Color3.fromRGB(12, 12, 15)
local CurrentTheme = NavyColor

-- ==========================================
-- FUNCIONES VISUALES (UICorner & Estrellas)
-- ==========================================
local function applyCorner(parent, radius)
    local corner = Instance.new("UICorner")
    corner.CornerRadius = radius or UDim.new(0, 8)
    corner.Parent = parent
    return corner
end

local function addTwinklingStars(parent)
    local starsFolder = Instance.new("Folder", parent)
    starsFolder.Name = "TwinklingStars"
    
    for i = 1, 14 do
        local star = Instance.new("Frame")
        star.Size = UDim2.new(0, math.random(2, 4), 0, math.random(2, 4))
        star.Position = UDim2.new(math.random(), 0, math.random(), 0)
        star.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
        star.BorderSizePixel = 0
        star.BackgroundTransparency = math.random()
        star.Parent = parent
        applyCorner(star, UDim.new(1, 0))
        
        task.spawn(function()
            while star and star.Parent do
                local tweenInfo = TweenInfo.new(math.random(1, 3), Enum.EasingStyle.Sine, Enum.EasingDirection.InOut)
                local targetTrans = math.random(20, 90) / 100
                TweenService:Create(star, tweenInfo, {BackgroundTransparency = targetTrans}):Play()
                task.wait(math.random(1, 3))
            end
        end)
    end
end

-- ==========================================
-- 1. CREACIÓN DE LA INTERFAZ (UI PRINCIPAL)
-- ==========================================
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "MiniBrookhavenUI_Scriptblox"
ScreenGui.ResetOnSpawn = false

local guiParent = nil
if gethui then guiParent = gethui() 
elseif pcall(function() return CoreGui.Name end) then guiParent = CoreGui 
else guiParent = LocalPlayer:WaitForChild("PlayerGui") end
ScreenGui.Parent = guiParent

-- Botón Flotante [;]
local ToggleButton = Instance.new("TextButton")
ToggleButton.Name = "OpenButton"
ToggleButton.Parent = ScreenGui
ToggleButton.BackgroundColor3 = CurrentTheme
ToggleButton.BorderSizePixel = 0
ToggleButton.Position = UDim2.new(0, 10, 0.5, -20)
ToggleButton.Size = UDim2.new(0, 40, 0, 40)
ToggleButton.Font = Enum.Font.Code
ToggleButton.Text = "[;]"
ToggleButton.TextColor3 = Color3.fromRGB(255, 255, 255)
ToggleButton.TextSize = 18
ToggleButton.Active = true
ToggleButton.Draggable = true
applyCorner(ToggleButton, UDim.new(0, 10))

-- Barra de Comandos Inferior
local CmdBar = Instance.new("TextBox")
CmdBar.Name = "CommandBar"
CmdBar.Parent = ScreenGui
CmdBar.BackgroundColor3 = BlackColor
CmdBar.BorderSizePixel = 0
CmdBar.Position = UDim2.new(0.5, -110, 1, 10)
CmdBar.Size = UDim2.new(0, 220, 0, 30)
CmdBar.Font = Enum.Font.Code
CmdBar.PlaceholderText = "Escribe un comando..."
CmdBar.TextColor3 = Color3.fromRGB(255, 255, 255)
CmdBar.PlaceholderColor3 = Color3.fromRGB(120, 120, 120)
CmdBar.TextSize = 14
CmdBar.Text = ""
CmdBar.ClearTextOnFocus = false
applyCorner(CmdBar, UDim.new(0, 8))

-- CmdBar2: Barra Superior (Oculta por defecto, dura 10 segundos al llamarse)
local TopCmdBar = Instance.new("TextBox")
TopCmdBar.Name = "TopCommandBar"
TopCmdBar.Parent = ScreenGui
TopCmdBar.BackgroundColor3 = BlackColor
TopCmdBar.BorderSizePixel = 0
TopCmdBar.Position = UDim2.new(0.5, -200, -0.1, 0)
TopCmdBar.Size = UDim2.new(0, 400, 0, 35)
TopCmdBar.Font = Enum.Font.Code
TopCmdBar.PlaceholderText = "Escribe comando directo (ej: fly)..."
TopCmdBar.TextColor3 = Color3.fromRGB(255, 255, 255)
TopCmdBar.PlaceholderColor3 = Color3.fromRGB(120, 120, 120)
TopCmdBar.TextSize = 14
TopCmdBar.Text = ""
TopCmdBar.ClearTextOnFocus = false
applyCorner(TopCmdBar, UDim.new(0, 8))

local SemiColonLabel = Instance.new("TextLabel", TopCmdBar)
SemiColonLabel.Size = UDim2.new(0, 30, 1, 0)
SemiColonLabel.BackgroundTransparency = 1
SemiColonLabel.Text = ";"
SemiColonLabel.TextColor3 = Color3.fromRGB(0, 200, 255)
SemiColonLabel.TextSize = 20
SemiColonLabel.Font = Enum.Font.Code

local function updateTheme(newColor)
    CurrentTheme = newColor
    ToggleButton.BackgroundColor3 = CurrentTheme
end

-- ==========================================
-- 2. FUNCIONES AUXILIARES Y APERTURA
-- ==========================================
local function toggleCmdBar()
    local isHidden = CmdBar.Position.Y.Scale > 0.9
    if isHidden then
        CmdBar:TweenPosition(UDim2.new(0.5, -110, 0.85, 0), "Out", "Quad", 0.2, true)
        task.wait(0.1)
        CmdBar:CaptureFocus()
    else
        CmdBar:TweenPosition(UDim2.new(0.5, -110, 1.2, 0), "In", "Quad", 0.2, true)
        CmdBar:ReleaseFocus()
    end
end

ToggleButton.MouseButton1Click:Connect(toggleCmdBar)

UserInputService.InputBegan:Connect(function(input, gameProcessed)
    if input.KeyCode == Enum.KeyCode.Semicolon and not gameProcessed then
        toggleCmdBar()
    end
end)

local function getPlayer(name)
    name = string.lower(name or "")
    for _, p in pairs(Players:GetPlayers()) do
        if string.sub(string.lower(p.Name), 1, #name) == name or string.sub(string.lower(p.DisplayName), 1, #name) == name then
            return p
        end
    end
    return nil
end

-- ==========================================
-- 3. DICCIONARIO DE COMANDOS
-- ==========================================
Commands["to"] = function(args)
    local target = getPlayer(args[1])
    if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
        LocalPlayer.Character.HumanoidRootPart.CFrame = target.Character.HumanoidRootPart.CFrame
    end
end

Commands["view"] = function(args)
    local target = getPlayer(args[1])
    if target and target.Character then Camera.CameraSubject = target.Character:FindFirstChild("Humanoid") end
end

Commands["unview"] = function()
    if LocalPlayer.Character then Camera.CameraSubject = LocalPlayer.Character:FindFirstChild("Humanoid") end
end

Commands["noclip"] = function()
    if noclipConnection then noclipConnection:Disconnect() end
    noclipConnection = RunService.Stepped:Connect(function()
        if LocalPlayer.Character then
            for _, part in pairs(LocalPlayer.Character:GetDescendants()) do
                if part:IsA("BasePart") then part.CanCollide = false end
            end
        end
    end)
end

Commands["clip"] = function()
    if noclipConnection then noclipConnection:Disconnect() noclipConnection = nil end
end

Commands["reset"] = function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.Health = 0
    end
end

Commands["re"] = function()
    Commands["reset"]()
end

Commands["tween_goto"] = function(args)
    local target = getPlayer(args[1])
    if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
        local tween = TweenService:Create(LocalPlayer.Character.HumanoidRootPart, TweenInfo.new(3, Enum.EasingStyle.Linear), {CFrame = target.Character.HumanoidRootPart.CFrame})
        tween:Play()
    end
end

Commands["dex"] = function()
    loadstring(game:HttpGet("https://raw.githubusercontent.com/infyiff/backup/main/dex.lua"))()
end

-- FLY MEJORADO (Estable para Mobile y PC)
Commands["fly"] = function()
    isFlying = true
    local char = LocalPlayer.Character
    if not char or not char:FindFirstChild("HumanoidRootPart") then return end
    local hrp = char.HumanoidRootPart
    local humanoid = char:FindFirstChildOfClass("Humanoid")
    if humanoid then humanoid.PlatformStand = true end
    
    local bv = Instance.new("BodyVelocity", hrp)
    bv.Name = "FlyVelocity"
    bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
    bv.Velocity = Vector3.new(0, 0, 0)
    
    local bg = Instance.new("BodyGyro", hrp)
    bg.Name = "FlyGyro"
    bg.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
    bg.CFrame = hrp.CFrame
    
    if flyConnection then flyConnection:Disconnect() end
    flyConnection = RunService.RenderStepped:Connect(function()
        if not isFlying then return end
        local camCF = Camera.CFrame
        local moveVector = Vector3.new(0, 0, 0)
        
        if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveVector = moveVector + camCF.LookVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveVector = moveVector - camCF.LookVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveVector = moveVector - camCF.RightVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveVector = moveVector + camCF.RightVector end
        if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveVector = moveVector + Vector3.new(0, 1, 0) end
        if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then moveVector = moveVector - Vector3.new(0, 1, 0) end
        
        if humanoid and humanoid.MoveDirection.Magnitude > 0 then
            moveVector = moveVector + (camCF.LookVector * humanoid.MoveDirection.Z + camCF.RightVector * humanoid.MoveDirection.X)
        end
        
        bv.Velocity = moveVector * flySpeed
        bg.CFrame = camCF
    end)
end

Commands["unfly"] = function()
    isFlying = false
    if flyConnection then flyConnection:Disconnect() flyConnection = nil end
    if LocalPlayer.Character then
        local humanoid = LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
        if humanoid then humanoid.PlatformStand = false end
        if LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
            for _, v in pairs(LocalPlayer.Character.HumanoidRootPart:GetChildren()) do
                if v.Name == "FlyVelocity" or v.Name == "FlyGyro" then v:Destroy() end
            end
        end
    end
end

-- FLY V2 (Mini panel flotante táctil)
Commands["fly_v2"] = function()
    local p = Instance.new("Frame", ScreenGui)
    p.Size = UDim2.new(0, 180, 0, 100)
    p.Position = UDim2.new(0.5, -90, 0.4, -50)
    p.BackgroundColor3 = BlackColor
    p.Active = true
    p.Draggable = true
    applyCorner(p, UDim.new(0, 10))
    addTwinklingStars(p)
    
    local title = Instance.new("TextLabel", p)
    title.Size = UDim2.new(1, 0, 0, 25)
    title.BackgroundColor3 = NavyColor
    title.Text = "Panel Fly V2"
    title.TextColor3 = Color3.fromRGB(255, 255, 255)
    title.Font = Enum.Font.Code
    title.TextSize = 13
    applyCorner(title, UDim.new(0, 10))
    
    local onBtn = Instance.new("TextButton", p)
    onBtn.Size = UDim2.new(0.85, 0, 0, 25)
    onBtn.Position = UDim2.new(0.075, 0, 0.35, 0)
    onBtn.Text = "ACTIVAR"
    onBtn.BackgroundColor3 = Color3.fromRGB(40, 140, 80)
    onBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(onBtn, UDim.new(0, 6))
    onBtn.MouseButton1Click:Connect(function() Commands["fly"]() end)
    
    local offBtn = Instance.new("TextButton", p)
    offBtn.Size = UDim2.new(0.85, 0, 0, 25)
    offBtn.Position = UDim2.new(0.075, 0, 0.7, 0)
    offBtn.Text = "DESACTIVAR"
    offBtn.BackgroundColor3 = Color3.fromRGB(160, 40, 40)
    offBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(offBtn, UDim.new(0, 6))
    offBtn.MouseButton1Click:Connect(function() Commands["unfly"]() end)
end

Commands["spin"] = function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
        if LocalPlayer.Character.HumanoidRootPart:FindFirstChild("SpinSpeed") then return end
        local bg = Instance.new("BodyAngularVelocity", LocalPlayer.Character.HumanoidRootPart)
        bg.Name = "SpinSpeed"
        bg.AngularVelocity = Vector3.new(0, 75, 0)
        bg.MaxTorque = Vector3.new(0, math.huge, 0)
    end
end

Commands["unspin"] = function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
        local spin = LocalPlayer.Character.HumanoidRootPart:FindFirstChild("SpinSpeed")
        if spin then spin:Destroy() end
    end
end

Commands["fling"] = function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
        local hrp = LocalPlayer.Character.HumanoidRootPart
        local bav = Instance.new("BodyAngularVelocity", hrp)
        bav.Name = "FlingForce"
        bav.AngularVelocity = Vector3.new(99999, 99999, 99999)
        bav.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
    end
end

Commands["unfling"] = function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
        local fling = LocalPlayer.Character.HumanoidRootPart:FindFirstChild("FlingForce")
        if fling then fling:Destroy() end
    end
end

Commands["sit"] = function()
    if LocalPlayer.Character then LocalPlayer.Character.Humanoid.Sit = true end
end

Commands["reset_time"] = function()
    Lighting.ClockTime = 14
end

Commands["godmode"] = function()
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.MaxHealth = math.huge
        LocalPlayer.Character.Humanoid.Health = math.huge
    end
end

Commands["speed"] = function(args)
    local val = tonumber(args[1]) or 16
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.WalkSpeed = val
    end
end

Commands["jump"] = function(args)
    local val = tonumber(args[1]) or 50
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.JumpPower = val
    end
end

Commands["infjump"] = function()
    if infJumpConnection then infJumpConnection:Disconnect() end
    infJumpConnection = UserInputService.JumpRequest:Connect(function()
        if LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") then
            LocalPlayer.Character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
        end
    end)
end

Commands["uninfjump"] = function()
    if infJumpConnection then infJumpConnection:Disconnect() infJumpConnection = nil end
end

Commands["fullbright"] = function()
    Lighting.Brightness = 2
    Lighting.ClockTime = 14
    Lighting.GlobalShadows = false
    Lighting.OutdoorAmbient = Color3.fromRGB(255, 255, 255)
end

Commands["anti_afk"] = function()
    if antiAfkConnection then antiAfkConnection:Disconnect() end
    local vu = game:GetService("VirtualUser")
    antiAfkConnection = LocalPlayer.Idled:Connect(function()
        vu:Button2Down(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
        task.wait(1)
        vu:Button2Up(Vector2.new(0,0), workspace.CurrentCamera.CFrame)
    end)
end

Commands["exit"] = function()
    LocalPlayer:Kick("Saliendo del juego...")
end

Commands["serverhop"] = function()
    pcall(function()
        local servers = HttpService:JSONDecode(game:HttpGet("https://games.roblox.com/v1/games/"..game.PlaceId.."/servers/Public?sortOrder=Asc&limit=100"))
        for _, server in ipairs(servers.data) do
            if server.playing < server.maxPlayers and server.id ~= game.JobId then
                TeleportService:TeleportToPlaceInstance(game.PlaceId, server.id, LocalPlayer)
                break
            end
        end
    end)
end

-- CMDBAR 2 (Aparece al llamarlo y se auto-oculta tras 10 segundos)
Commands["cmdbar2"] = function()
    local isHidden = TopCmdBar.Position.Y.Scale > 0
    if isHidden then
        TopCmdBar:TweenPosition(UDim2.new(0.5, -200, 0, 10), "Out", "Quad", 0.2, true)
        task.wait(0.1)
        TopCmdBar:CaptureFocus()
        
        if topCmdBarTimer then task.cancel(topCmdBarTimer) end
        topCmdBarTimer = task.spawn(function()
            task.wait(10)
            if TopCmdBar.Position.Y.Scale >= 0 and TopCmdBar.Position.Y.Scale < 0.1 then
                TopCmdBar:TweenPosition(UDim2.new(0.5, -200, -0.1, 0), "In", "Quad", 0.2, true)
                TopCmdBar:ReleaseFocus()
            end
        end)
    else
        TopCmdBar:TweenPosition(UDim2.new(0.5, -200, -0.1, 0), "In", "Quad", 0.2, true)
        TopCmdBar:ReleaseFocus()
    end
end

-- PROBLEM (Con Blur y Estrellas)
Commands["problem"] = function()
    if activeProblemBlur then activeProblemBlur:Destroy() end
    activeProblemBlur = Instance.new("BlurEffect")
    activeProblemBlur.Size = 12
    activeProblemBlur.Parent = Lighting

    local p = Instance.new("Frame", ScreenGui)
    p.Size = UDim2.new(0, 320, 0, 220)
    p.Position = UDim2.new(0.5, -160, 0.5, -110)
    p.BackgroundColor3 = BlackColor
    p.Active = true
    p.Draggable = true
    applyCorner(p, UDim.new(0, 12))
    addTwinklingStars(p)
    
    local title = Instance.new("TextLabel", p)
    title.Size = UDim2.new(1, 0, 0, 30)
    title.BackgroundColor3 = NavyColor
    title.Text = "Reportar Problema / Sugerencia"
    title.TextColor3 = Color3.fromRGB(255, 255, 255)
    title.Font = Enum.Font.Code
    title.TextSize = 13
    applyCorner(title, UDim.new(0, 12))
    
    local closeBtn = Instance.new("TextButton", p)
    closeBtn.Size = UDim2.new(0, 25, 0, 25)
    closeBtn.Position = UDim2.new(1, -28, 0, 3)
    closeBtn.Text = "X"
    closeBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
    closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(closeBtn, UDim.new(0, 6))
    closeBtn.MouseButton1Click:Connect(function()
        if activeProblemBlur then activeProblemBlur:Destroy() activeProblemBlur = nil end
        p:Destroy()
    end)
    
    local box = Instance.new("TextBox", p)
    box.Size = UDim2.new(0.9, 0, 0, 90)
    box.Position = UDim2.new(0.05, 0, 0.22, 0)
    box.PlaceholderText = "Escribe el problema aquí..."
    box.TextWrapped = true
    box.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
    box.TextColor3 = Color3.fromRGB(255, 255, 255)
    box.Font = Enum.Font.Code
    applyCorner(box, UDim.new(0, 8))
    
    local send = Instance.new("TextButton", p)
    send.Size = UDim2.new(0.9, 0, 0, 30)
    send.Position = UDim2.new(0.05, 0, 0.68, 0)
    send.Text = "Enviar Reporte"
    send.BackgroundColor3 = Color3.fromRGB(40, 140, 80)
    send.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(send, UDim.new(0, 8))
    
    send.MouseButton1Click:Connect(function()
        if box.Text ~= "" then
            pcall(function()
                local data = ""
                if pcall(function() return readfile("BrookhavenProblems.txt") end) then
                    data = readfile("BrookhavenProblems.txt")
                end
                data = data .. "\n[Usuario: " .. LocalPlayer.Name .. "]\n" .. box.Text .. "\n--------------------\n"
                writefile("BrookhavenProblems.txt", data)
            end)
            send.Text = "¡Enviado con éxito!"
            task.wait(1.5)
            if activeProblemBlur then activeProblemBlur:Destroy() activeProblemBlur = nil end
            p:Destroy()
        end
    end)
    
    -- SISTEMA DE MODERACIÓN EXCLUSIVO PARA ueu9195
    if LocalPlayer.Name == "ueu9195" or LocalPlayer.DisplayName == "ueu9195" then
        local modBtn = Instance.new("TextButton", p)
        modBtn.Size = UDim2.new(0.9, 0, 0, 25)
        modBtn.Position = UDim2.new(0.05, 0, 0.83, 0)
        modBtn.Text = "[Admin ueu9195] Ver Reportes Globales"
        modBtn.BackgroundColor3 = Color3.fromRGB(200, 100, 0)
        modBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
        applyCorner(modBtn, UDim.new(0, 8))
        
        modBtn.MouseButton1Click:Connect(function()
            p:Destroy()
            local pMod = Instance.new("Frame", ScreenGui)
            pMod.Size = UDim2.new(0, 350, 0, 260)
            pMod.Position = UDim2.new(0.5, -175, 0.5, -130)
            pMod.BackgroundColor3 = BlackColor
            pMod.Active = true
            pMod.Draggable = true
            applyCorner(pMod, UDim.new(0, 12))
            addTwinklingStars(pMod)
            
            local tMod = Instance.new("TextLabel", pMod)
            tMod.Size = UDim2.new(1, 0, 0, 30)
            tMod.BackgroundColor3 = Color3.fromRGB(200, 100, 0)
            tMod.Text = "Panel de Moderación (ueu9195)"
            tMod.TextColor3 = Color3.fromRGB(255, 255, 255)
            applyCorner(tMod, UDim.new(0, 12))
            
            local closeMod = Instance.new("TextButton", pMod)
            closeMod.Size = UDim2.new(0, 25, 0, 25)
            closeMod.Position = UDim2.new(1, -28, 0, 3)
            closeMod.Text = "X"
            closeMod.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
            closeMod.TextColor3 = Color3.fromRGB(255, 255, 255)
            applyCorner(closeMod, UDim.new(0, 6))
            closeMod.MouseButton1Click:Connect(function()
                if activeProblemBlur then activeProblemBlur:Destroy() activeProblemBlur = nil end
                pMod:Destroy()
            end)
            
            local scroll = Instance.new("ScrollingFrame", pMod)
            scroll.Size = UDim2.new(1, -10, 1, -45)
            scroll.Position = UDim2.new(0, 5, 0, 38)
            scroll.BackgroundTransparency = 1
            scroll.CanvasSize = UDim2.new(0, 0, 3, 0)
            
            local txt = "No hay reportes registrados."
            pcall(function()
                if readfile("BrookhavenProblems.txt") then
                    txt = readfile("BrookhavenProblems.txt")
                end
            end)
            
            local label = Instance.new("TextLabel", scroll)
            label.Size = UDim2.new(1, 0, 1, 0)
            label.BackgroundTransparency = 1
            label.TextColor3 = Color3.fromRGB(255, 255, 255)
            label.TextXAlignment = Enum.TextXAlignment.Left
            label.TextYAlignment = Enum.TextYAlignment.Top
            label.TextWrapped = true
            label.Text = txt
        end)
    end
end

Commands["dance"] = function() Players:Chat("/e dance") end
Commands["dance2"] = function() Players:Chat("/e dance2") end
Commands["dance3"] = function() Players:Chat("/e dance3") end

Commands["1_prsn"] = function() Camera.CameraMode = Enum.CameraMode.LockFirstPerson end
Commands["2_prsn"] = function() Camera.CameraMode = Enum.CameraMode.Classic Camera.FieldOfView = 50 end
Commands["3_persona"] = function() Camera.CameraMode = Enum.CameraMode.Classic Camera.FieldOfView = 70 end

Commands["rejoin"] = function()
    TeleportService:TeleportToPlaceInstance(game.PlaceId, game.JobId, LocalPlayer)
end

Commands["exit_command"] = function() ScreenGui:Destroy() end

-- ==========================================
-- 4. PANELES ESPECIALES (LISTA Y SETTINGS)
-- ==========================================
local function createBasePanel(titleText)
    local Frame = Instance.new("Frame", ScreenGui)
    Frame.Size = UDim2.new(0, 340, 0, 260)
    Frame.Position = UDim2.new(0.5, -170, 0.5, -130)
    Frame.BackgroundColor3 = BlackColor
    Frame.Active = true
    Frame.Draggable = true
    applyCorner(Frame, UDim.new(0, 12))
    addTwinklingStars(Frame)
    
    local Title = Instance.new("TextLabel", Frame)
    Title.Size = UDim2.new(1, 0, 0, 30)
    Title.BackgroundColor3 = NavyColor
    Title.Text = titleText
    Title.TextColor3 = Color3.fromRGB(255, 255, 255)
    Title.Font = Enum.Font.Code
    Title.TextSize = 14
    applyCorner(Title, UDim.new(0, 12))
    
    local Close = Instance.new("TextButton", Frame)
    Close.Size = UDim2.new(0, 28, 0, 28)
    Close.Position = UDim2.new(1, -31, 0, 1)
    Close.Text = "X"
    Close.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
    Close.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(Close, UDim.new(0, 6))
    Close.MouseButton1Click:Connect(function() Frame:Destroy() end)
    
    return Frame
end

Commands["cmds"] = function()
    local p = createBasePanel("Lista de Comandos")
    local Scroll = Instance.new("ScrollingFrame", p)
    Scroll.Size = UDim2.new(1, -10, 1, -40)
    Scroll.Position = UDim2.new(0, 5, 0, 35)
    Scroll.BackgroundTransparency = 1
    Scroll.CanvasSize = UDim2.new(0, 0, 3.5, 0)
    
    local listText = Instance.new("TextLabel", Scroll)
    listText.Size = UDim2.new(1, 0, 1, 0)
    listText.BackgroundTransparency = 1
    listText.TextColor3 = Color3.fromRGB(220, 220, 220)
    listText.Font = Enum.Font.Code
    listText.TextSize = 13
    listText.TextXAlignment = Enum.TextXAlignment.Left
    listText.TextYAlignment = Enum.TextYAlignment.Top
    listText.Text = [[;to [jugador]
;view [jugador] / ;unview
;noclip / ;clip
;tween goto [jugador]
;fly / ;unfly / ;fly v2
;spin / ;unspin / ;fling / ;unfling
;sit / ;reset / ;re / ;godmode
;speed [num] / ;jump [num]
;infjump / ;uninfjump
;fullbright / ;anti afk
;reset time
;exit / ;serverhop
;problem (Reportes & Admin ueu9195)
;cmdbar2 (Barra superior)
;dance / ;dance2 / ;dance3
;1 prsn / ;2 prsn / ;3 persona
;rejoin / ;view info server
;settings panel
;new command / ;custom list
;cmds]]
end

Commands["view_info_server"] = function()
    local p = createBasePanel("Server Info")
    local Info = Instance.new("TextLabel", p)
    Info.Size = UDim2.new(1, -20, 1, -50)
    Info.Position = UDim2.new(0, 10, 0, 40)
    Info.BackgroundTransparency = 1
    Info.TextColor3 = Color3.fromRGB(255, 255, 255)
    Info.Font = Enum.Font.Code
    Info.TextSize = 14
    Info.TextXAlignment = Enum.TextXAlignment.Left
    Info.Text = "Jugadores conectados: " .. #Players:GetPlayers() .. "\nPlaceId: " .. game.PlaceId .. "\nJobId: " .. string.sub(game.JobId, 1, 15) .. "..."
end

Commands["settings_panel"] = function()
    local p = createBasePanel("Settings & Temas")
    
    local Label = Instance.new("TextLabel", p)
    Label.Size = UDim2.new(0.9, 0, 0, 30)
    Label.Position = UDim2.new(0.05, 0, 0.15, 0)
    Label.Text = "Tema de Color:"
    Label.TextColor3 = Color3.fromRGB(255, 255, 255)
    Label.BackgroundTransparency = 1
    Label.Font = Enum.Font.Code
    
    local Theme1 = Instance.new("TextButton", p)
    Theme1.Size = UDim2.new(0.4, 0, 0, 35)
    Theme1.Position = UDim2.new(0.05, 0, 0.3, 0)
    Theme1.Text = "Azul Marino"
    Theme1.BackgroundColor3 = Color3.fromRGB(15, 35, 75)
    Theme1.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(Theme1, UDim.new(0, 8))
    Theme1.MouseButton1Click:Connect(function() updateTheme(Color3.fromRGB(15, 35, 75)) end)
    
    local Theme2 = Instance.new("TextButton", p)
    Theme2.Size = UDim2.new(0.4, 0, 0, 35)
    Theme2.Position = UDim2.new(0.55, 0, 0.3, 0)
    Theme2.Text = "Negro Puro"
    Theme2.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
    Theme2.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(Theme2, UDim.new(0, 8))
    Theme2.MouseButton1Click:Connect(function() updateTheme(Color3.fromRGB(20, 20, 25)) end)
    
    local KeyInput = Instance.new("TextBox", p)
    KeyInput.Size = UDim2.new(0.35, 0, 0, 30)
    KeyInput.Position = UDim2.new(0.05, 0, 0.6, 0)
    KeyInput.PlaceholderText = "Tecla (ej: F)"
    applyCorner(KeyInput, UDim.new(0, 8))
    
    local CmdInput = Instance.new("TextBox", p)
    CmdInput.Size = UDim2.new(0.5, 0, 0, 30)
    CmdInput.Position = UDim2.new(0.43, 0, 0.6, 0)
    CmdInput.PlaceholderText = "Comando (ej: fly)"
    applyCorner(CmdInput, UDim.new(0, 8))
    
    local SaveBtn = Instance.new("TextButton", p)
    SaveBtn.Size = UDim2.new(0.88, 0, 0, 30)
    SaveBtn.Position = UDim2.new(0.05, 0, 0.8, 0)
    SaveBtn.Text = "Guardar Atajo"
    SaveBtn.BackgroundColor3 = NavyColor
    SaveBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(SaveBtn, UDim.new(0, 8))
    
    SaveBtn.MouseButton1Click:Connect(function()
        local key = string.upper(KeyInput.Text)
        if key ~= "" and CmdInput.Text ~= "" then
            Keybinds[key] = CmdInput.Text
            SaveBtn.Text = "¡Guardado!"
            task.wait(1)
            SaveBtn.Text = "Guardar Atajo"
        end
    end)
end

local function openNewCommandPanel()
    local p = createBasePanel("Nuevo Comando")
    
    local NameInput = Instance.new("TextBox", p)
    NameInput.Size = UDim2.new(0.9, 0, 0, 28)
    NameInput.Position = UDim2.new(0.05, 0, 0.15, 0)
    NameInput.PlaceholderText = "Nombre del comando..."
    NameInput.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
    NameInput.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(NameInput, UDim.new(0, 6))
    
    local CodeInput = Instance.new("TextBox", p)
    CodeInput.Size = UDim2.new(0.9, 0, 0, 50)
    CodeInput.Position = UDim2.new(0.05, 0, 0.35, 0)
    CodeInput.PlaceholderText = "Código Lua..."
    CodeInput.TextWrapped = true
    CodeInput.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
    CodeInput.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(CodeInput, UDim.new(0, 6))
    
    local ReasonInput = Instance.new("TextBox", p)
    ReasonInput.Size = UDim2.new(0.9, 0, 0, 28)
    ReasonInput.Position = UDim2.new(0.05, 0, 0.58, 0)
    ReasonInput.PlaceholderText = "Razón del comando..."
    ReasonInput.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
    ReasonInput.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(ReasonInput, UDim.new(0, 6))
    
    local CreateBtn = Instance.new("TextButton", p)
    CreateBtn.Size = UDim2.new(0.9, 0, 0, 32)
    CreateBtn.Position = UDim2.new(0.05, 0, 0.78, 0)
    CreateBtn.Text = "Crear y Guardar"
    CreateBtn.BackgroundColor3 = Color3.fromRGB(40, 140, 80)
    CreateBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
    applyCorner(CreateBtn, UDim.new(0, 8))
    
    CreateBtn.MouseButton1Click:Connect(function()
        local cmdName = string.lower(NameInput.Text)
        local cmdCode = CodeInput.Text
        local cmdReason = ReasonInput.Text
        
        if cmdName ~= "" and cmdCode ~= "" then
            Commands[cmdName] = function()
                pcall(function() loadstring(cmdCode)() end)
            end
            table.insert(CustomCommandsInfo, {Name = cmdName, Reason = cmdReason ~= "" and cmdReason or "Sin razón"})
            p:Destroy()
        end
    end)
end

Commands["new_command"] = openNewCommandPanel
Commands["new_commad"] = openNewCommandPanel

Commands["custom_list"] = function()
    local p = createBasePanel("Comandos Creados")
    local Scroll = Instance.new("ScrollingFrame", p)
    Scroll.Size = UDim2.new(1, -10, 1, -40)
    Scroll.Position = UDim2.new(0, 5, 0, 35)
    Scroll.BackgroundTransparency = 1
    Scroll.CanvasSize = UDim2.new(0, 0, 2, 0)
    
    local text = "Comandos personalizados:\n\n"
    if #CustomCommandsInfo == 0 then
        text = text .. "No has creado ningún comando todavía."
    else
        for _, info in ipairs(CustomCommandsInfo) do
            text = text .. "• ;" .. info.Name .. " -> Razón: " .. info.Reason .. "\n"
        end
    end
    
    local listText = Instance.new("TextLabel", Scroll)
    listText.Size = UDim2.new(1, 0, 1, 0)
    listText.BackgroundTransparency = 1
    listText.TextColor3 = Color3.fromRGB(220, 220, 220)
    listText.Font = Enum.Font.Code
    listText.TextSize = 13
    listText.TextXAlignment = Enum.TextXAlignment.Left
    listText.TextYAlignment = Enum.TextYAlignment.Top
    listText.Text = text
end

-- ==========================================
-- 5. PROCESADOR INTELIGENTE DE COMANDOS
-- ==========================================
local function executeCommandString(text)
    text = string.lower(text)
    if string.sub(text, 1, 1) == ";" then
        text = string.sub(text, 2)
    end
    
    local args = string.split(text, " ")
    local cmd = args[1]
    table.remove(args, 1)
    
    if cmd == "tween" and args[1] == "goto" then
        table.remove(args, 1)
        if Commands["tween_goto"] then Commands["tween_goto"](args) return end
    elseif cmd == "fly" and args[1] == "v2" then
        table.remove(args, 1)
        if Commands["fly_v2"] then Commands["fly_v2"](args) return end
    elseif cmd == "1" and args[1] == "prsn" then
        table.remove(args, 1)
        if Commands["1_prsn"] then Commands["1_prsn"](args) return end
    elseif cmd == "2" and args[1] == "prsn" then
        table.remove(args, 1)
        if Commands["2_prsn"] then Commands["2_prsn"](args) return end
    elseif cmd == "3" and (args[1] == "persona" or args[1] == "prsn") then
        table.remove(args, 1)
        if Commands["3_persona"] then Commands["3_persona"](args) return end
    elseif cmd == "reset" and args[1] == "time" then
        table.remove(args, 1)
        if Commands["reset_time"] then Commands["reset_time"](args) return end
    elseif cmd == "view" and args[1] == "info" and args[2] == "server" then
        table.remove(args, 1); table.remove(args, 1)
        if Commands["view_info_server"] then Commands["view_info_server"](args) return end
    elseif cmd == "settings" and args[1] == "panel" then
        table.remove(args, 1)
        if Commands["settings_panel"] then Commands["settings_panel"](args) return end
    elseif cmd == "exit" and args[1] == "command" then
        table.remove(args, 1)
        if Commands["exit_command"] then Commands["exit_command"](args) return end
    elseif cmd == "new" and (args[1] == "command" or args[1] == "commad") then
        table.remove(args, 1)
        openNewCommandPanel()
        return
    elseif cmd == "anti" and args[1] == "afk" then
        table.remove(args, 1)
        if Commands["anti_afk"] then Commands["anti_afk"]() return end
    end
    
    if Commands[cmd] then
        pcall(function() Commands[cmd](args) end)
    end
end

-- Barra Inferior
CmdBar.FocusLost:Connect(function(enterPressed)
    if enterPressed then
        local text = CmdBar.Text
        CmdBar.Text = ""
        toggleCmdBar()
        executeCommandString(text)
    end
end)

-- Barra Superior (CmdBar2 - Oculta por defecto, se oculta sola tras usarla)
TopCmdBar.FocusLost:Connect(function(enterPressed)
    if enterPressed then
        local text = TopCmdBar.Text
        TopCmdBar.Text = ""
        TopCmdBar:TweenPosition(UDim2.new(0.5, -200, -0.1, 0), "In", "Quad", 0.2, true)
        TopCmdBar:ReleaseFocus()
        executeCommandString(text)
    end
end)

-- Chat del juego
LocalPlayer.Chatted:Connect(function(msg)
    if string.sub(msg, 1, 1) == ";" then
        executeCommandString(msg)
    end
end)

-- Atajos de teclado
UserInputService.InputBegan:Connect(function(input, gameProcessed)
    if gameProcessed then return end
    local keyName = input.KeyCode.Name
    if Keybinds[keyName] then
        executeCommandString(Keybinds[keyName])
    end
end)

Features & Information

Infinite yield pero avanzado

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts