I'm working on an isometric game and am using someone's camera script which has some nice controls for rotating the angle. However, because the CameraType is scriptable I cannot use the studio's Invisicam settings.

How would I go about getting invisicam functionality while also working with this custom camera?

For reference, this is the custom isometric camera script I'm working with:

-------------------------------------------------------------------
repeat wait() until game.Players.LocalPlayer.Character

local player = game.Players.LocalPlayer
local camera = workspace.CurrentCamera
local character = player.Character


camera.CameraType = Enum.CameraType.Scriptable
camera.FieldOfView = 20
character.Humanoid.WalkSpeed = 16
local rotate = 0
local debuging = false

function cameramove ()
	workspace.CurrentCamera.CFrame = CFrame.new(character.HumanoidRootPart.Position)*CFrame.Angles(0,math.rad(rotate),0)*CFrame.new(Vector3.new(50,100,50),Vector3.new(character.HumanoidRootPart.Position))
end
function rotatechange(input,event)
	if input.KeyCode == Enum.KeyCode.E then

		for i = rotate,rotate+90,10 do 
			rotate = i
			wait()
		end
		wait(1)
		debuging = false
	end
	if input.KeyCode == Enum.KeyCode.Q and debuging == false then
		debuging = true
		for i = rotate,rotate-90,-10 do 
			rotate = i
			wait()
		end
		wait(1)
		debuging = false
	end
end




game:GetService("RunService"):BindToRenderStep("Camera",1,cameramove) 
game:GetService("UserInputService").InputBegan:connect(rotatechange)