LocalScript not updating Gui for all players

I have team menu selection gui, it’s controlled with a few scripts but the main one that changes around the gui is a localscript inside it. It still has some issues that need to be sorted out. One being that if a player creates a new team, a new box appears with the players name in it like it should, the other players see this update live as well, as it all should. But if a player clicks on the box it is meant to then add the players name inside it, when the player clicks on it, this all works, the client that joined that team see their name appear under the original players but the original player can’t see the the new players. I’m not entirely sure why this part of the script isn’t publicly changing the gui but the part that creates the new team ui does. Can anyone help me figure this out?

local function JoinTeam(player, NewTeam) -- Join team
	print(player.Name .. " has joined " .. NewTeam.Name)
	player.Team = game.Teams:FindFirstChild(NewTeam.Name)
	local Team = NewTeam.Name
	AV:FireServer(Team)
	if Menu:WaitForChild(NewTeam.Name):WaitForChild("Username 1").Text == "" then
		Menu:WaitForChild(NewTeam.Name):WaitForChild("Username 1").Text = player.Name
	elseif Menu:WaitForChild(NewTeam.Name):WaitForChild("Username 2").Text == "" then
		Menu:WaitForChild(NewTeam.Name):WaitForChild("Username 2").Text = player.Name
	else Menu:WaitForChild(NewTeam.Name):WaitForChild("Username 3").Text = player.Name

	end

end

PJT.OnClientEvent:Connect(JoinTeam)

Duplicate: GUI not updating for all players - Help and Feedback / Scripting Support - DevForum | Roblox