I'm trying to make a ready system, so when a player presses a button on a surfaceGui it updates the surfaceGui for everyone and says that the player is ready. I have more to this script but it has nothing to do with the question so i'm only going to put the ready system in the code down below.
Server script in ServerScriptService:
local Players = game:GetService("Players")
local rs = game.ReplicatedStorage
local PlrReadySt = "Not Ready"
local function onPlayerReady(player)
for i,readyPlr in pairs(game.Players:GetChildren()) do
for i,v in pairs(readyPlr.PlayerGui.MainUi.SurfaceGui.MainFrame.InfoFrame.PlrList:GetChildren()) do
if v.Name == player.Name then
if PlrReadySt == "Ready" then
PlrReadySt = "Not Ready"
v.StReady.Text = PlrReadySt
player.Ready.Value = false
else
PlrReadySt = "Ready"
v.StReady.Text = PlrReadySt
player.Ready.Value = true
end
end
end
end
end
rs.Events.PlayerReady.OnServerEvent:Connect(onPlayerReady)
Local script in StarterGui:
local Players = game:GetService("Players")
local function onReadyBtn()
game.ReplicatedStorage.Events.PlayerReady:FireServer()
end
script.Parent.MainUi.SurfaceGui.MainFrame.ReadyBtn.MouseButton1Click:Connect(onReadyBtn)
