How do I make a GUI appear for everyone through a ServerScriptService server sided script?

Hey, i’m kinda wondering how its not showing in every client and only in the server’s screen in roblox studio whenever this code runs:

	game.ServerStorage.Assets.ShoutGui.ShoutFrame.NameOfPlayer.Text = sender.Name
	game.ServerStorage.Assets.ShoutGui.ShoutFrame.DescriptionOfShout.Text = shoutDescription
	local cloneOfShoutGui = game.ServerStorage.Assets.ShoutGui:Clone()
	cloneOfShoutGui.Parent = game.StarterGui
	wait(5)
	cloneOfShoutGui:Destroy()

Anyway to fix this?

REEEEEE StarterGui is on the server, PlayerGui is on the client

I need to put it on everybody’s screen, plus this is a server script.

repeat clone and parent for every player, put it in their PlayerGui

Still it’ll only be visible on the server side, if you want it to be on everyone’s screen go through all the Players through a loop using for _, Player in pairs(game.Players:GetPlayers()) do and change the GUI that way

for _, v in pairs(game.Players:GetPlayers()) do

doesn’t work

for i,v in pairs(game.Players:GetPlayers()) do
	local guiclone = ScreenGui:Clone()
	guiclone.Parent = v.PlayerGui
end
2 Likes

How would I destroy the gui after then?

for i,v in pairs(game.Players:GetPlayers()) do
	local guiClone = v.PlayerGui:FindFirstChild("CloneName")
	guiClone:Destroy()
end
1 Like
local DebrisService = game:GetService("Debris")
for i,v in pairs(game.Players:GetPlayers()) do
	local guiclone = ScreenGui:Clone()
	guiclone.Parent = v.PlayerGui
	DebrisService:AddItem(guiclone, 5)
end
1 Like