Run it
Copy the script and paste it into your executor.
Players = :()
UserInputService = :()
player = Players.LocalPlayer
playerGui = player:()
playerGui:()
playerGui.LightningHubPlayer:()
screenGui = .()
screenGui.Name =
screenGui.ResetOnSpawn =
screenGui.Parent = playerGui
mainFrame = .()
mainFrame.Name =
mainFrame.Size = .(, , , )
mainFrame.Position = .(, -, , )
mainFrame.BackgroundColor3 = .(, , )
mainFrame.BorderSizePixel =
mainFrame.Active =
mainFrame.Draggable =
mainFrame.Parent = screenGui
corner = .()
corner.CornerRadius = .(, )
corner.Parent = mainFrame
sound = .()
sound.Name =
sound.Volume =
sound.Parent =
queue = {}
currentIndex =
isPlaying =
isLooping =
isShuffled =
()
total = #queue
total >
trackLabel.Text = currentIndex .. .. total
trackLabel.Text =
(index)
index < index > #queue
sound:()
isPlaying =
playButton.Text =
()
currentIndex = index
id = queue[currentIndex]
.(id, )
id = .. id
sound.SoundId = id
sound:()
sound:()
isPlaying =
playButton.Text =
()
()
#queue ==
isShuffled
newIdx = .(, #queue)
(newIdx)
nextIdx = currentIndex +
nextIdx > #queue
isLooping
nextIdx =
sound:()
isPlaying =
playButton.Text =
()
(nextIdx)
()
#queue ==
prevIdx = currentIndex -
prevIdx <
isLooping
prevIdx = #queue
(prevIdx)
sound.Ended:(()
isPlaying
()
)
textBox = .()
textBox.Size = .(, , , )
textBox.Position = .(, , , )
textBox.BackgroundColor3 = .(, , )
textBox.TextColor3 = .(, , )
textBox.PlaceholderText =
textBox.Text =
textBox.TextSize =
textBox.Font = .Font.SourceSansBold
textBox.Parent = mainFrame
tbCorner = .()
tbCorner.CornerRadius = .(, )
tbCorner.Parent = textBox
playButton = .()
playButton.Size = .(, , , )
playButton.Position = .(, , , )
playButton.BackgroundColor3 = .(, , )
playButton.TextColor3 = .(, , )
playButton.Text =
playButton.TextSize =
playButton.Font = .Font.SourceSansBold
playButton.Parent = mainFrame
pbCorner = .()
pbCorner.CornerRadius = .(, )
pbCorner.Parent = playButton
playButton.MouseButton1Click:(()
#queue ==
input = textBox.Text
input ==
ids = {}
token .(input, )
id = .(token, , )
id ~=
.(ids, id)
#ids ==
queue = ids
currentIndex =
isShuffled =
()
isPlaying
sound:()
isPlaying =
playButton.Text =
sound:()
isPlaying =
playButton.Text =
sound.Playing == currentIndex >
sound:()
sound:()
isPlaying =
playButton.Text =
)
stopButton = .()
stopButton.Size = .(, , , )
stopButton.Position = .(, , , )
stopButton.BackgroundColor3 = .(, , )
stopButton.TextColor3 = .(, , )
stopButton.Text =
stopButton.TextSize =
stopButton.Font = .Font.SourceSansBold
stopButton.Parent = mainFrame
stCorner = .()
stCorner.CornerRadius = .(, )
stCorner.Parent = stopButton
stopButton.MouseButton1Click:(()
sound:()
isPlaying =
playButton.Text =
)
loopButton = .()
loopButton.Size = .(, , , )
loopButton.Position = .(, , , )
loopButton.BackgroundColor3 = .(, , )
loopButton.TextColor3 = .(, , )
loopButton.Text =
loopButton.TextSize =
loopButton.Font = .Font.SourceSansBold
loopButton.Parent = mainFrame
lpCorner = .()
lpCorner.CornerRadius = .(, )
lpCorner.Parent = loopButton
loopButton.MouseButton1Click:(()
isLooping = isLooping
loopButton.BackgroundColor3 = isLooping .(, , ) .(, , )
)
volButton = .()
volButton.Size = .(, , , )
volButton.Position = .(, , , )
volButton.BackgroundColor3 = .(, , )
volButton.TextColor3 = .(, , )
volButton.Text =
volButton.TextSize =
volButton.Font = .Font.SourceSansBold
volButton.Parent = mainFrame
vbCorner = .()
vbCorner.CornerRadius = .(, )
vbCorner.Parent = volButton
volPopup = .()
volPopup.Name =
volPopup.Size = .(, , , )
volPopup.Position = .(, , , -)
volPopup.BackgroundColor3 = .(, , )
volPopup.BorderSizePixel =
volPopup.Visible =
volPopup.Parent = mainFrame
vpCorner = .()
vpCorner.CornerRadius = .(, )
vpCorner.Parent = volPopup
volSlider = .()
volSlider.Size = .(, , , )
volSlider.Position = .(, , , )
volSlider.BackgroundColor3 = .(, , )
volSlider.Text =
volSlider.Parent = volPopup
vsCorner = .()
vsCorner.CornerRadius = .(, )
vsCorner.Parent = volSlider
volIndicator = .()
volIndicator.Size = .(, , , )
volIndicator.Position = .(, , , )
volIndicator.BackgroundColor3 = .(, , )
volIndicator.BorderSizePixel =
volIndicator.Parent = volSlider
viCorner = .()
viCorner.CornerRadius = .(, )
viCorner.Parent = volIndicator
()
vol = sound.Volume
maxVol =
percent = .(vol / maxVol, , )
volIndicator.Size = .(percent, , , )
()
dragging =
volSlider.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1
dragging =
)
volSlider.InputEnded:((input)
input.UserInputType == .UserInputType.MouseButton1
dragging =
)
volSlider.InputChanged:((input)
dragging input.UserInputType == .UserInputType.MousePosition
relativeX = .((input.Position.X - volSlider.AbsolutePosition.X) / volSlider.AbsoluteSize.X, , )
sound.Volume = relativeX *
()
)
volButton.MouseButton1Click:(()
volPopup.Visible = volPopup.Visible
)
trackLabel = .()
trackLabel.Size = .(, , , )
trackLabel.Position = .(, , , )
trackLabel.BackgroundTransparency =
trackLabel.TextColor3 = .(, , )
trackLabel.Text =
trackLabel.TextSize =
trackLabel.Font = .Font.SourceSansBold
trackLabel.TextXAlignment = .TextXAlignment.Left
trackLabel.Parent = mainFrame
prevBtn = .()
prevBtn.Size = .(, , , )
prevBtn.Position = .(, , , )
prevBtn.BackgroundColor3 = .(, , )
prevBtn.TextColor3 = .(, , )
prevBtn.Text =
prevBtn.TextSize =
prevBtn.Font = .Font.SourceSansBold
prevBtn.Parent = mainFrame
pvCorner = .()
pvCorner.CornerRadius = .(, )
pvCorner.Parent = prevBtn
prevBtn.MouseButton1Click:(prevTrack)
nextBtn = .()
nextBtn.Size = .(, , , )
nextBtn.Position = .(, , , )
nextBtn.BackgroundColor3 = .(, , )
nextBtn.TextColor3 = .(, , )
nextBtn.Text =
nextBtn.TextSize =
nextBtn.Font = .Font.SourceSansBold
nextBtn.Parent = mainFrame
nxCorner = .()
nxCorner.CornerRadius = .(, )
nxCorner.Parent = nextBtn
nextBtn.MouseButton1Click:(nextTrack)
shuffleBtn = .()
shuffleBtn.Size = .(, , , )
shuffleBtn.Position = .(, , , )
shuffleBtn.BackgroundColor3 = .(, , )
shuffleBtn.TextColor3 = .(, , )
shuffleBtn.Text =
shuffleBtn.TextSize =
shuffleBtn.Font = .Font.SourceSansBold
shuffleBtn.Parent = mainFrame
shCorner = .()
shCorner.CornerRadius = .(, )
shCorner.Parent = shuffleBtn
shuffleBtn.MouseButton1Click:(()
#queue ==
i = #queue, , -
j = .(, i)
queue[i], queue[j] = queue[j], queue[i]
isShuffled =
()
)
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
screenGui.Enabled
input.KeyCode == .KeyCode.Space
playButton.MouseButton1Click:()
input.KeyCode == .KeyCode.Right
()
input.KeyCode == .KeyCode.Left
()
)
textBox.FocusLost:((enterPressed)
enterPressed
input = textBox.Text
input ==
ids = {}
token .(input, )
id = .(token, , )
id ~=
.(ids, id)
#ids ==
queue = ids
currentIndex =
isShuffled =
()
)
()Audio player