im pretty decent builder but scripting is not really my thing i made one it was not that bad but i need one that looks better. So if you can please link a script below! GiantNateDaGreat
So you have made a fairly vague post here, but I feel like I should help you here. By following these steps, you should be able to accomplish your goal.
-
The Setup
I have made a hierarchy of the set up (as seen in the screenshot below).
-
The script
Inside of “MASTER_SCRIPT”, you want to include the following:
--VARIABLES
local song = script.Parent:WaitForChild("Song")
local songtext = script.Parent:WaitForChild("ScreenGui").Frame.Song
local soundIds = { --For the SoundId
"rbxassetid://1837324424";
"rbxassetid://1837849285"
}
local songTitles = { --For the Title and Author of song
"Example1 by John Doe";
"Example2 by Jane Doe"
}
--For the two tables up above, make sure the position of the song title matches with the position of the sound ID
--LOOP
while true do
for i = 1,#soundIds do
song.SoundId = soundIds[i]
repeat wait() until song.SoundId == soundIds[i] --Makes sure the SoundId has loded
song:Play()
songtext.Text = songTitles[i]
wait(song.TimeLength)
song:Stop()
end
end
-
Place File
If you want to see this in person, you can use this place:
SongPlayer.rbxl (22.5 KB) -
Overall
To make this work, I first created a table of the sound IDs (In order that I wanted them to play). Next, I created a table of the sound names and authors (that I wanted to show) in accordance to its position on the table. After that, i used awhile true do
loop (which runs forever), and inside, I did afor i
loop that runs down the soundIds table. From there, it just takes the current value in each table and edits the SoundId and the TextLabel’s text.