how do you make music play in a screengui? for example, i'm making a game and i have a title screen with labels and buttons, right? and then, i want to add music that lasts until you select the button to play the game! which has it's script that works already
PLAYGAME.MouseButton1Click:Connect(function() Frame.Visible = false end)
then, i try to create the music part, but it doesn't work
--variables-- Sound = script.Parent.Sound PLAYGAME = script.Parent.PLAYGAME --scripts-- Sound:Play() Sound.Playing = true PLAYGAME.MouseButton1Click:connect(function() Sound.Playing = false end)
if im doing something wrong then please tell me that would really help! thanks!
edit: the PLAYGAME button is inside of a frame inside of a ScreenGui and inside of the StarterGui folder. the Sound, i moved to the workspace
--services-- local Players = game:GetService('Players') -- This is the folder that you can see on the explorer. --variables-- local Player = Players.LocalPlayer -- This is you, but you can do it just in a LocalScript. local PlayerGui = Player:WaitForChild('PlayerGui') local ScreenGui = PlayerGui:WaitForChild('ScreenGui') -- Just put the name of your ScreenGui here. local Sound = ScreenGui:WaitForChild('Sound') local PLAYGAME = ScreenGui:WaitForChild('PLAYGAME') --scripts-- Sound:Play() PLAYGAME.MouseButton1Click:Connect(function() -- connect is deprecated use Connect. Sound.Playing = false end)
If you have any question put it below on commentaries.
Sound Objects can only operate in a physical environment, i.e workspace. If you do this via a LocalScript (assuming your code is local), the sound will only be played in your client.
So It would be something like:
local Sound = workspace.Sound Sound.SoundID = "rbxassetid://SoundIdHere" local PLAYGAME = script.Parent.PLAYGAME Sound:Play() -- Start the music PLAYGAME.MouseButton1Click:connect(function() Sound:Stop -- It’s best to use these methods to start/stop music end)