Script no work me is sad :c

local tool = script.Parent
local gui = tool:WaitForChild("Fartz")
local plr = game.Players.LocalPlayer or game.Players.PlayerAdded:Wait()	

tool.Activated:Connect(function()
	gui.Farts.Visible = true
end)

GUI can be seen only if its parent is a PlayerGui

so replace that with this:

gui.Parent = plr.PlayerGui --so it can be seen

and to make it invisible,

gui.Parent = tool --so it cant be seen

tysm dude
11111111111111111111111111111