Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

How do i make my camera tween back to the player???

Ok so, i have already made a script where i made a region3.

When you are inside that region3 the camera will tween to a 2d view. Now, i made so that when you walk outside of the region the cameratype will be custom which resets the camera back to normal.

But i want it to tween back to the camera smoothly like it did when i entered the region.

Does anyone here know how to tween a camera back?

and i dont want it to copy the location that it was and tween it back to that location since my character is able to walk out from other parts of the region!

Here is my code so far!

local CutCam = game.Workspace.CameraForCutscene.CutsceneCamera

local Found = false

local player = game.Players.LocalPlayer
local character = player.Character
local humanoid = character:WaitForChild("Humanoid")

local camera = game.Workspace.CurrentCamera

local SoundregionsFolder = game.Workspace.Regions

local OrientationPart = game.Workspace.CameraForCutscene.OrientationPart

game:GetService("RunService").Stepped:Connect(function()

	CutCam.CFrame = CFrame.new(player.Character.HumanoidRootPart.Position) * CFrame.new(1,1,3)
	CutCam.Orientation = player.Character.HumanoidRootPart.Orientation + Vector3.new(20,0,0)
end)



local cameraCFrame = workspace.CurrentCamera.CFrame

local TS = game:GetService("TweenService")



while wait(0.1) do
	


	local TweenBackInfo = TweenInfo.new(1, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out, 0)
	local Back = {CFrame = cameraCFrame}
	local TweenBack = TS:Create(camera,TweenBackInfo,Back)

	for i, v in pairs(SoundregionsFolder:GetChildren())do

		Found = false

		local region = Region3.new(v.Position - (v.Size/2),v.Position + (v.Size/2))

		local Parts = game.Workspace:FindPartsInRegion3WithWhiteList(region, game.Players.LocalPlayer.Character:GetDescendants())


		for _, part in pairs(Parts) do

			if part:FindFirstAncestor(game.Players.LocalPlayer.Name) then
				print("Player Was Found")
				Found = true
				break
			else
				Found = false
				print("Player Was Not Found")
				break
			end
		end

		if Found == true then
			print("Player Was Found")
			camera.CameraType = Enum.CameraType.Scriptable
			local TweeningInfoCutScene = TweenInfo.new(1, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out, 0)
			local CameraCutSceneCF = {CFrame = CutCam.CFrame}
			local TweenCameraCutScene = TS:Create(camera,TweeningInfoCutScene,CameraCutSceneCF)		
			TweenCameraCutScene:Play()	
			break
		end

		if Found == false then
			print("Player Was Not Found")
			
			
			camera.CameraType = Enum.CameraType.Custom
			
			
		end


	end

end

1 answer

This discussion is preserved as it was. New answers, comments, and votes are closed.