Scripted Camera Bug

Uh, i’ve been stumbling into this weird bug?
I don’t even know if it’s a problem of the client but it just breaks the cameras in a veyr weird way.
I placed both existing parts for each camera but it tilts my current camera with the same position but the orietation changes.

local Workspace = game:GetService("Workspace")
local buttonsGui = script.Parent.Main:FindFirstChild("Buttons")


local camera = Workspace.CurrentCamera

local CanvaGroups = {
	buttonsGui:FindFirstChild("1"),
	buttonsGui:FindFirstChild("2")
}


CanvaGroups[1].Multiplayer.MouseEnter:Connect(function()
	

	camera.CFrame = game.Workspace.MenuCams.MultiPlrCam.CFrame
end)


CanvaGroups[1].Singleplayer.MouseEnter:Connect(function()


	camera.CFrame = game.Workspace.MenuCams.SinglePlrCam.CFrame
end)

CanvaGroups[2].Credits.MouseEnter:Connect(function()

	
	camera.CFrame = game.Workspace.MenuCams.CreditsCam.CFrame
end)

CanvaGroups[2].Settings.MouseEnter:Connect(function()

	camera.CFrame = game.Workspace.MenuCams.SettingsCam.CFrame
end)


Make sure to set the cameratype to Scriptable before doing so, also I suggest placing all Cameras under a group and setting the model’s ModelStreamingMode to Persistent to ensure it is loaded at all times.