--> Functions ChangeTitle = function(newTitle) for i,v in pairs(game.Players:GetChildren()) do local toChange = v.PlayerGui:WaitForChild("GameGUI").Title toChange.Text = newTitle end end --> Main Game Code if #CurrentPlayers >= 2 then print("More.") ChangeTitle("Round starting in 30 seconds!") elseif #CurrentPlayers < 2 then print("Less.") ChangeTitle("Waiting for more players!") end
Before this, I had an event in Rep where I would call upon from a ServerScript. It was defined in a local-script to take the parameter given upon being called by the ServerScript and to use that to replace the text of the TextLabel.
I'm not understanding what i'm doing wrong here, it seems so simple. But, I have no errors in the console..?
It just won't change the text of the TextLabel.
First of all, are you using a local script?
Secondly, if I am not mistaken, to get the players of the Service players, you can just use :GetPlayers() instead of children.
--> Functions ChangeTitle = function(newTitle) for i,v in pairs(game.Players:GetPlayers()) do local toChange = v.PlayerGui:WaitForChild("GameGUI").Title toChange.Text = newTitle end end --> Main Game Code if #CurrentPlayers >= 2 then print("More.") ChangeTitle("Round starting in 30 seconds!") elseif #CurrentPlayers < 2 then print("Less.") ChangeTitle("Waiting for more players!") end
Also, make sure you are looking at output for errors.