In an empty baseplate, run this in the command bar in Studio or in a script in Play Solo:
p = Instance.new("Part", workspace); b = Instance.new("BillboardGui", p); b.Size = UDim2.new(0,50,0,50); b.Adornee = p; b.AlwaysOnTop = true; bb = Instance.new("TextButton", b) bb.Size = UDim2.new(1,0,1,0) bb.MouseButton1Click:connect(function() print("Clicked") end)
and try to click the button. Clicked won’t get printed out – the BillboardGui button doesn’t detect the click. This is a gif of the issue achieved using the code above in Play Solo:
Notice the cursor doesn’t even turn black (means ROBLOX doesn’t think the cursor is over a clickable object). I’ve tried setting both objects’ (BillboardGui and button) active properties to true, but that didn’t change anything.