game.Players.LocalPlayer.Character:WaitForChild('Humanoid').Died:connect(function() script.Parent.Parent.Frame.Visible = true end)
When you join a game it will take a small amout of time until the character is created. This delay is not included in studio. We commonly use the following code to wait for the character:-
local localPlr = game:GetService('Players').LocalPlayer local char = localPlr.Character or localPlr.CharacterAdded:Wait() -- if the character is nil ie not loaded wait intil the character is added and return the character model to the char variable
Putting it all together
local localPlr = game:GetService('Players').LocalPlayer local char = localPlr.Character or localPlr.CharacterAdded:Wait() char:WaitForChild('Humanoid').Died:Connect(function() script.Parent.Parent.Frame.Visible = true end)
Note this should be a local script in the gui.
I hope this helps.
Use the transparency property instead of the visible property.
im sure this will work if not then ill fix it
script.Parent.Parent.Frame:WaitForChild() game.Players.LocalPlayer.Character:WaitForChild('Humanoid').Died:connect(function() script.Parent.Parent.Frame.Visible = true end)