You can write your topic however you want, but you need to answer these questions:
This script is supposed to have the screengui anchor point, at the position of the mouse if the player right clicks.
This should only be possible if the mouse is inside the billboardgui.
The gui should disappear if the mouse leaves the gui but that part works.
Currently, the gui does indeed appear when the player right clicks, it just appears somewhere in the upper right corner. And the position does not change when I try again.
local menu = script.Parent.MainPart
local clickpart = script.Parent.Parent.BillboardGui.TextButton
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
clickpart.MouseButton2Click:Connect(function()
menu.Visible = true
menu.Position = UDim2.fromOffset(mouse.X, mouse.Y)
end)
menu.MouseLeave:Connect(function()
menu.Visible = false
end)