My **new** Join Menu

I actually found it from this post.

local mouse = game.Players.LocalPlayer:GetMouse()
local cam = workspace.CurrentCamera
local camPart = workspace.campart

local Scale = 5000

cam.CameraType = Enum.CameraType.Scriptable

game:GetService("RunService").RenderStepped:Connect(function()
	local center = Vector2.new(cam.ViewportSize.X/2, cam.ViewportSize.Y/2)
	local x = mouse.X - center.X / 2
	local y = mouse.Y - center.Y / 2
	local xOffset = x/Scale 
	local yOffset = y/Scale
	
	local lookAtPoint = camPart.Position+camPart.CFrame.LookVector*5
	local vector = Vector3.new(
		lookAtPoint.X - xOffset,
		lookAtPoint.Y - yOffset,
		lookAtPoint.Z - xOffset)  
	
	local result = CFrame.lookAt(camPart.CFrame.Position,vector)
	
	cam.CFrame = result
end)
2 Likes