I've tried countless articles, websites, tutorials, and even attempted to learn about events to create the billboard gui.

If there is a possibility, would it be as easy to remove the billboard gui when the specific gui is not visible?

Code I've tried using vvv

local billboardgui = game:GetService("ServerStorage"):WaitForChild("BillboardGui")
local guiObject = game:GetService("StarterGui"):WaitForChild("HelpCenterGUI").MainFrame
game.Players.PlayerAdded:Connect(function(player)
	
	player.CharacterAdded:Connect(function(character)
		
		while guiObject.Position == (0.106,0,0.174,-34) do 
			local clonedgui = billboardgui:Clone()
			clonedgui.TextLabel.Text = "Viewing Menu"
			clonedgui.TextLabel.TextColor3 = Color3.fromRGB(36,154,136)
			clonedgui.Parent = game.Workspace:WaitForChild(player.Name).Head
		end
	end)
end)