Navigation Buttons (Doesn't work on different screens)

	-- Predefined CanvasPosition values for each button
	local canvasPositions = {
		Housekeeping = Vector2.new(0, 0),
		Receptionists = Vector2.new(0, 1287.36),
		LaundryService = Vector2.new(0, 1515.85),
		Engineers = Vector2.new(0, 1849.45),
		BuffetWaiters = Vector2.new(0, 2086.81),
		PoolAttendants = Vector2.new(0, 2180.82),
	}

	-- Handle navigation
	for _, navigationButton in pairs(staffUI.Navigation:GetChildren()) do
		navigationButton.MouseButton1Up:Connect(function()
			local targetPosition = canvasPositions[navigationButton.Name]
			if targetPosition then
				staffUI.Staff.CanvasPosition = targetPosition
			end
		end)
	end

Desired Effect:

It works on that screen resolution, however because its in OFFSET, on different screens it doesn’t set the proper position.

I tried using this formula but still didn’t work:

local targetPosition = Vector2.new(0,staffUI.Staff.AbsoluteCanvasSize.Y * targetFrame.Position.Y.Scale + targetFrame.AbsoluteSize.Y/2 - staffUI.Staff.AbsoluteSize.Y/2)

change it to scale instead, you can do it using this plugin