as you can see when i do touch the part it wont open and does not show any errors in the output, here is an image in where i did turn off the Gui so when the player hits it it opens:
First, try removing Hum, as it isn’t used, it might be searching for Hum and failing to do so, making an error and breaking your code.
Second, try adding print(“Touched part”) on the touched function, then try touching the part and see if it prints in the console.
Third, what you are displaying is a billboard gui, a typeo f gui that only displays on objects, not on the player’s screen. Check if your gui is visible, adjust the values to have it outside the block and enable on top overlay.
--// Put all your Parts, Guis, and TouchParts above!
local function OpenGuis(BlockTouched)
local Hum = hit.Parent:FindFirstChild("Humanoid")
if Hum then
script.Parent.Egg1.GuiPart.BillboardGui.Enabled = true
end
end
TouchPart1.Touched:Connect(function(hit)
OpenGuis(hit)
end)