Need help understanding why the Camera's aren't working

I want the cameras to essentially tween between positions and then hop to the next parts and tween between them, so on so forth.

The current issue is they simply don’t work, when you join the server you just see your avatar at spawn instead of the cameras rotating around different parts of the map.

Fixed a quick bug with the camera returning to humanoid but that’s not linked to it.

After that, you should include more details if you have any. Try to make your topic as descriptive as possible, so that it’s easier for people to help you!

-- local CutsceneTweens = {
	["Home GK"] = {
		HGK1.CFrame,
		HomeGKTween2,
	},
	
	["Home Goal"] = {
		HGoal1.CFrame,
		HomeGoalTween2,
	},
	
	["Home Board"] = {
		HBoard1.CFrame,
		HomeBoardTween2,
	},
	
	["Motto"] = {
		Motto1.CFrame,
		MottoTween2,
	},
	
	["Overview"] = {
		Overview1.CFrame,
		OverviewTween2,
	},
	
	["Home Light"] = {
		HLight1.CFrame,
		HLightTween2,
	},
}

local CutsceneLoop = coroutine.create(function()
	while true do
		local RandomCutscenes = math.random(1, #CutsceneTweens)
		
		for Index, Tweens in pairs(RandomCutscenes) do
			if Index == 1 then
				Camera.CFrame = Tweens
			elseif Index == 2 then
				Tweens:Play()
				Tweens.Completed:Wait(0.5)
				Opaque:Play()
				Opaque.Completed:Wait(1.2)
				Transparency:Play()

				task.wait(3.4)
			end
		end
		
		if Enabled == false then
			coroutine.yield()
		end
	end
end)

Bindable.Event:Connect(function(Status)
	Enabled = Status
	
	if Status == true then
		coroutine.resume(CutsceneLoop)
	else
		TransparencyDisabled:Play()
		local Character = game:GetService("Players").LocalPlayer.Character
		local Humanoid = Character:WaitForChild("Humanoid")

		local CameraObject = workspace.CurrentCamera
		CameraObject.CameraType = Enum.CameraType.Custom
		CameraObject.CameraSubject = Humanoid
	end
end)


Thank you for any help in advance!

1 Like

Here

if Index == 1 then
				Camera.CFrame = Tweens
			elseif Index == 2 then
				Tweens:Play()

You are setting the camera CFrame without tweeting it, you should do

if Index == 1 then continue
elseif Index == 2 then
				Tweens:Play()

I’ve tried it but, unfortunately, this doesn’t solve the problem. Same behaviour as before. Thank you anyway!

1 Like