--when the player touch this brick it will give him a gui , but if the player already have one this script wont give it to him and this is what I want . the only problem is in line 14 , I cant access the playergui and I don't know how to fix it
function onPJ(plr)
local humanoid = plr.Parent:FindFirstChild("Humanoid")
if humanoid then
local player = game.Players:GetPlayerFromCharacter(plr.Parent)
local alreadygui = player.PlayerGui:FindFirstChild("Buy")
if alreadygui == nil then
print("nothere")
local GUI = script.Buy:clone()
GUI.Parent = player.PlayerGui
elseif alreadygui ~= nil then
print("ishere")
player.PlayerGui.Buy.Frame.Visible=true
end
end
end
end
script.Parent.Touched:connect(onPJ)

6 comments
Format your code inside a Code block. To do that: Edit this post, Click on the blue Lua icon which will insert 2 squiggly (~) lines. Paste your code in between the two lines.
^^^^
You can only get player gui from a local script
please.. format your code
The server does not have access to the children of any PlayerGui folder.. if you want to do UI code set up a front end
Edit: Placed code in a code block