Are you saying that the text on the server “view” in Studio doesn’t update? If so, this is desired behaviour as the server doesn’t actually render anything at runtime, it just replicates and syncs data to players for their computers to render it on-screen.
This is down to replication, it’s a very broad subject and I can’t cover it in-depth in a forum post but:
The interface you’re using is inside a PlayerGui, I’m guessing it’s a ScreenGui. This ScreenGui will only render on the player’s screen who’s PlayerGui it is inside of.
To make it update on everyones screen, you need to update everyones instance of the ScreenGui. This can likely be done using remote events
It’s very bad practice to update UI from a server script. It pretty much should never ever need to be done; I can’t imagine a single case where you would need to. I’d recommend reading up on networking, replication & remote events. All UI logic should be done locally by local scripts running on the clients computer
The problem is that the server is not sending the text to the other clients. You need to recode your event handler to deal with it. Then on the clients, they have to listen for that event from the server so they will process the incoming message.
You need to have this on the server:
game.ReplicatedStorage.cloudife.update.OnServerEvent:Connect(function(player, text)
flightnumber.Text = text
game.ReplicatedStorage.cloudife.update:FireAllClients(text)
end)
Then the clients needs the event handler to process it.
game.ReplicatedStorage.cloudife.update.OnClientEvent:Connect(function(text)
flightnumber.Text = text
end)
Don’t send the instances. They are unique to each client. Just send the text.
script.Parent.MouseButton1Click:Connect(function()
local flightnumber = game:GetService("Players").LocalPlayer:WaitForChild("PlayerGui"):WaitForChild("cloudife2").cloudife.home.flightnumber
local box = script.Parent.Parent.flightnumber
flightnumber.Text = box.Text
game.ReplicatedStorage.cloudife.update:FireServer(box.Text)
end)