I have this script in the Frame:

local frame = game.StarterGui.ScreenGui.Frame

function OnMouseHover()
	frame.Position = x,y,z
end
script.Parent.MouseEnter:connect(OnMouseHover)

function OnMouseNotHover()
	frame.Position = x,y,z
end
script.Parent.MouseLeave:connect(OnMouseNotHover)

I put x,y,z in both because I'm not sure about this part. How would I make the Frame move horizontally until a certain position and then once the mouse leaves it goes back to its older position but goes smoothly?