this is script
local Goo = script.Parent
local team = BrickColor.new("Dark stone grey")
local infect = game.ReplicatedStorage.GetInfect
local waitd = false
Goo.Touched:Connect(function(hit)
if not waitd then
local plr = game.Players:GetPlayerFromCharacter(hit.Parent);
if plr then
plr.TeamColor = team
end
infect:FireClient(plr)
waitd = true
end
end)
this is a local script
local infect = game.ReplicatedStorage.GetInfect
local sound = script.Sound
infect.OnClientEvent:Connect(function()
sound.Playing = true
end)

7 comments
I think you've forgot about you debounce, "waitd". Your Server Script will run as soon as it get's Touched, which I'm pretty sure all Parts do when you start a game, and it will fire the Event to plr, which does not exist because it wasn't a player who touched the brick. And then the Script will never run again.
i will test for debounce
the team color change but sound not play
and plr mean player that hit brick
nothing in output
You should move both line 12 and 13 inside your if plr then block
spjureeedd it not working and same problem onclientevent not working