Help with music script

Hello community, This is a LocalScript, but there is only one thing that does not work, it is that when I Touch the same object, the music plays again.

LocalScript:

local debounce = true

local music = "AboutTime"

game:GetService('Workspace').SpawnsTeleportPlace.INICIO1.Touched:Connect(function()
	if debounce == true then
		debounce = false
		local player = game:GetService("Players").LocalPlayer
		print('SoundInicio1')
		if player then
			for i,v in pairs(player.PlayerGui.SoundService:GetChildren()) do
				v:Stop()
			end
			player.PlayerGui.SoundService[music]:Play()
		end
		wait(1)
		debounce = true
	end
end)

You need to up your debounce time. You can simply wait 1 second and have it play again, that is why.

So I increase the debounce time to the audio time?

You can make the part’s transparency to 1 or something like that.

Your setting the debounce to true again at the end, which will make the msuic play again.

You could use the :Wait on the sound so it would wait until the sound is done playing.

That won’t work, people can still touch it and it will run the touched event.

Well, you can change the part’s visibility. It works I think

Yeah sure, if you look at the properties of the sound object there should be a time property or something.

I think that if it would work there is no need for people to touch it, if it is a localscript.