Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How do I fix this background music playing glitch?

Asked by 6 years ago
Edited 6 years ago

I made a GUI music player which has a button, and inside the button there is an Audio. I added a script also inside the Audio so that it could play shuffled music. It works well and such but the problem is, when I join the server it for some reason starts playing music in the background without clicking the GUI!

math.randomseed(tick())
math.random() -- throw out first not-very-random value (known limitation of lua)

musicTable = --Making a table of music / your songs
{
    "rbxassetid://142305080", -- 1 - Let's Groove
    "rbxassetid://142386715", -- 2 - Can't Touch This
    "rbxassetid://276873987", -- 3 - Noob Song
    "rbxassetid://1100823134", -- 4 - At Dawn
    "rbxassetid://142352014" -- 5 Safety Dance
}

while true do
    --Shuffle
    local index = math.random(1, #musicTable - 1) -- choose an item not from the end
    musicTable[1], musicTable[index] = musicTable[index], musicTable[1] -- switch with first item
    for i = 2, #musicTable-1 do -- do regular shuffle algorithm starting at 2nd item
        index = math.random(i, #musicTable)
        musicTable[i], musicTable[index] = musicTable[index], musicTable[i]
    end
    --Play music
    for i = 1, #musicTable do
        wait(1) -- Just creating a small pause before a random song plays
        script.Parent.SoundId = musicTable[i] --Choose song
        script.Parent:Play() --Play song
        script.Parent.Ended:wait() -- Waiting until the song has finished
    end
end

How do I make so that the music playlist plays only when clicking the GUI button. Should I add a script that is something like this?

script.gui.TextButton.MouseButton1Click:connect(function() --code here end)

If so, in what part of script I should add function that makes you play songs only when clicking the GUI button?

Answer this question