Sonique
Key RequiredUniversal

Sonique

Universal ScriptCadhounCadhoun 740 views 16 executesUpdated Apr 15, 2026
Unrated
00
Lua Script•211 lines (7643 chars)
local lp = game.Players.LocalPlayer
local pgui = lp:WaitForChild("PlayerGui")
local ts = game:GetService("TweenService")
local uis = game:GetService("UserInputService")
local run = game:GetService("RunService")

-- esto se queda igual por si lo ejecutas dos veces
if pgui:FindFirstChild("SoniqueWindowsFinal") then pgui.SoniqueWindowsFinal:Destroy() end

local sg = Instance.new("ScreenGui")
sg.Name = "SoniqueWindowsFinal"
sg.ResetOnSpawn = false -- esto es lo que necesitabas, genio
sg.Parent = pgui

local main = Instance.new("Frame")
main.Name = "Main"
main.Size = UDim2.new(0, 280, 0, 320)
main.Position = UDim2.new(0.5, -140, 0.5, -160)
main.BackgroundColor3 = Color3.fromRGB(30, 30, 35)
main.BorderSizePixel = 0
main.Active = true
main.ClipsDescendants = true
main.Parent = sg

local mainCorner = Instance.new("UICorner", main)
mainCorner.CornerRadius = UDim.new(0, 4)

local titleBar = Instance.new("Frame", main)
titleBar.Name = "TitleBar"
titleBar.Size = UDim2.new(1, 0, 0, 32)
titleBar.BackgroundColor3 = Color3.fromRGB(45, 45, 50)
titleBar.BorderSizePixel = 0
titleBar.ZIndex = 15

local titleTxt = Instance.new("TextLabel", titleBar)
titleTxt.Size = UDim2.new(1, -50, 1, 0)
titleTxt.Position = UDim2.new(0, 12, 0, 0)
titleTxt.BackgroundTransparency = 1
titleTxt.Text = "Sonique Media Station"
titleTxt.TextColor3 = Color3.new(1, 1, 1)
titleTxt.Font = Enum.Font.SourceSansBold
titleTxt.TextSize = 14
titleTxt.TextXAlignment = Enum.TextXAlignment.Left
titleTxt.ZIndex = 16

local close = Instance.new("TextButton", titleBar)
close.Name = "CloseBtn"
close.Size = UDim2.new(0, 46, 1, 0)
close.Position = UDim2.new(1, -46, 0, 0)
close.BackgroundColor3 = Color3.fromRGB(45, 45, 50)
close.BorderSizePixel = 0
close.Text = "✕"
close.TextColor3 = Color3.new(1, 1, 1)
close.TextSize = 18
close.ZIndex = 17
close.AutoButtonColor = false

local content = Instance.new("Frame", main)
content.Size = UDim2.new(1, -20, 1, -95)
content.Position = UDim2.new(0, 10, 0, 40)
content.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
content.BorderSizePixel = 0

local scroll = Instance.new("ScrollingFrame", content)
scroll.Size = UDim2.new(1, -4, 1, -4)
scroll.Position = UDim2.new(0, 2, 0, 2)
scroll.BackgroundTransparency = 1
scroll.BorderSizePixel = 0
scroll.ScrollBarThickness = 6
scroll.ScrollBarImageColor3 = Color3.fromRGB(80, 80, 80)

local layout = Instance.new("UIListLayout", scroll)
layout.Padding = UDim.new(0, 1)

local vizArea = Instance.new("Frame", main)
vizArea.Size = UDim2.new(1, -20, 0, 40)
vizArea.Position = UDim2.new(0, 10, 1, -50)
vizArea.BackgroundTransparency = 1

local bars = {}
for i = 1, 24 do
    local b = Instance.new("Frame", vizArea)
    b.Size = UDim2.new(1/24, -2, 0.1, 0)
    b.Position = UDim2.new((i-1)/24, 0, 1, 0)
    b.AnchorPoint = Vector2.new(0, 1)
    b.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
    b.BorderSizePixel = 0
    table.insert(bars, b)
end

local function createResizer(name, pos)
    local r = Instance.new("Frame", main)
    r.Name = name
    r.Size = UDim2.new(0, 15, 0, 15)
    r.Position = pos
    r.BackgroundTransparency = 1
    r.ZIndex = 30
    return r
end

local resBR = createResizer("BR", UDim2.new(1, -15, 1, -15))
local resBL = createResizer("BL", UDim2.new(0, 0, 1, -15))
local resTR = createResizer("TR", UDim2.new(1, -15, 0, 0))
local resTL = createResizer("TL", UDim2.new(0, 0, 0, 0))

local dragging, activeResizer = false, nil
local dragStart, startPos, startSize, startPosResize

local function handleInput(obj, isResizing)
    obj.InputBegan:Connect(function(i)
        if i.UserInputType == Enum.UserInputType.MouseButton1 then
            if isResizing then
                activeResizer = obj.Name
                startSize = main.Size
                startPosResize = main.Position
            else
                dragging = true
                startPos = main.Position
            end
            dragStart = i.Position
        end
    end)
end

handleInput(titleBar, false)
handleInput(resBR, true); handleInput(resBL, true)
handleInput(resTR, true); handleInput(resTL, true)

uis.InputChanged:Connect(function(i)
    if i.UserInputType == Enum.UserInputType.MouseMovement then
        local delta = i.Position - dragStart
        if dragging then
            main.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
        elseif activeResizer then
            local nX, nY, pX, pY = startSize.X.Offset, startSize.Y.Offset, startPosResize.X.Offset, startPosResize.Y.Offset
            if activeResizer:find("B") then nY = math.clamp(startSize.Y.Offset + delta.Y, 200, 900) end
            if activeResizer:find("R") then nX = math.clamp(startSize.X.Offset + delta.X, 250, 1200) end
            if activeResizer:find("T") then 
                local moveY = math.clamp(startSize.Y.Offset - delta.Y, 200, 900)
                pY = startPosResize.Y.Offset + (startSize.Y.Offset - moveY)
                nY = moveY
            end
            if activeResizer:find("L") then 
                local moveX = math.clamp(startSize.X.Offset - delta.X, 250, 1200)
                pX = startPosResize.X.Offset + (startSize.X.Offset - moveX)
                nX = moveX
            end
            main.Size = UDim2.new(0, nX, 0, nY)
            main.Position = UDim2.new(startPosResize.X.Scale, pX, startPosResize.Y.Scale, pY)
        end
    end
end)

uis.InputEnded:Connect(function(i)
    if i.UserInputType == Enum.UserInputType.MouseButton1 then
        dragging, activeResizer = false, nil
    end
end)

local soundList = {}
local function scan()
    for _, v in pairs(scroll:GetChildren()) do if v:IsA("TextButton") then v:Destroy() end end
    soundList = {}
    for _, s in pairs(game:GetDescendants()) do
        if s:IsA("Sound") and (s.TimeLength > 10 or s.Name:lower():find("music")) then
            local b = Instance.new("TextButton", scroll)
            b.Size = UDim2.new(1, 0, 0, 30)
            b.BackgroundColor3 = Color3.fromRGB(35, 35, 40)
            b.BorderSizePixel = 0
            b.Text = "  " .. s.Name:sub(1, 30)
            b.TextColor3 = Color3.new(0.8, 0.8, 0.8)
            b.Font = Enum.Font.SourceSans
            b.TextSize = 14
            b.TextXAlignment = Enum.TextXAlignment.Left
            b.MouseButton1Click:Connect(function() s.Volume = (s.Volume > 0) and 0 or 0.5 end)
            table.insert(soundList, {obj = s, btn = b})
        end
    end
    scroll.CanvasSize = UDim2.new(0, 0, 0, layout.AbsoluteContentSize.Y)
end

run.RenderStepped:Connect(function()
    local t = tick()
    local activeSound = false
    for _, itm in pairs(soundList) do
        if itm.obj.IsPlaying and itm.obj.Volume > 0 then
            activeSound = itm.obj
            itm.btn.TextColor3 = Color3.fromRGB(0, 180, 255)
            itm.btn.BackgroundColor3 = Color3.fromRGB(40, 45, 60)
        else
            itm.btn.TextColor3 = Color3.fromRGB(130, 130, 130)
            itm.btn.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
        end
    end
    for i, bar in pairs(bars) do
        local factor = activeSound and activeSound.PlaybackLoudness/300 or 0.1
        local noise = math.noise(t * 5, i * 0.4)
        local val = math.clamp((noise + 1) * 0.5 * factor, 0.05, 1)
        bar.Size = bar.Size:Lerp(UDim2.new(1/24, -2, val, 0), 0.2)
    end
end)

close.MouseButton1Click:Connect(function() sg:Destroy() end)
scan()

local function updateScroll() 
    if sg.Parent then scroll.CanvasSize = UDim2.new(0, 0, 0, layout.AbsoluteContentSize.Y) end
end
task.spawn(function() while task.wait(1) do updateScroll() end end)

print("[Sonique]: System Booted - Inmortal Mode")

Features & Information

It has the innovative function of muting music in any game and open source btw
#Universal#Music

Community Comments (2)

yn6uvilyn6uvilApr 15, 2026

scam

Replying to @yn6uvil
CadhounCadhounApr 16, 2026

@yn6uvil nop, Which game did you test it in?

More Scripts for Universal Scripts