I have a main status gui handing things like round start, end etc and showing that to the player.

this is whats in my main script


local ReplicatedStorage = game:GetService("ReplicatedStorage")


local Status = ReplicatedStorage:WaitForChild("Status")

while true do
	
	Status.Value = "Waiting for enough players"
end

does not update it

local script on gui


local Replicatedstorage = game:GetService("ReplicatedStorage") --gets replicatedstorage waits for status 
local Status = Replicatedstorage:WaitForChild("Status")

script.Parent.Text = Status.Value

Status:GetPropertyChangedSignal("Value"):Connect(function()
	script.Parent.Text = Status.Value
end)

if I do status.value in the local script the Status string value in replicated storage updates but does not update if I do status.value in the main script located in serverscriptservice

10 comments

0

It should work. Is your local script a descendant of PlayerGui?

0

what do you mean a descendant of playergui? my gui is located in startergui

0

Where is your main script located? Make sure you add a wait() to the loop in the main script too or you will hang the server.

0

my main script is located in server script service

0

I've replicated your code exactly, with the only change being to add the wait(), and it's working in my test place. I just have a text label in a screenGui in StarterGui, and it's updating correctly. If you add a print statement to both scripts, can you confirm that they're both running?

0

both scripts are confirmed running

0

Does the text start as something other than "Waiting for enough players", and you are expecting it to change to that and it's not happening?

0

no its just blank

0

I'm stumped then. Could you provide an example place to have a look at?

0

i figured it out