Need help on fixing scripting error

So, I made a camera script, and what I’m trying to do is make the camera zoom out more when the player touches a certain spot. I keep on getting this error can someone help me?

local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")

local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local camera = game.Workspace.CurrentCamera
local hoop1 = game.Workspace.ViewPoints.Goal
local tweenService = game:GetService("TweenService")



local hoop = hoop1

local tweenInfo = TweenInfo.new(
	1.5,
	Enum.EasingStyle.Linear,
	Enum.EasingDirection.Out,
	0,
	false,
	0
)

local CameraChangeProperties = {
	["Position"] = Vector3.new(0,9.6,35)
}

local cameraProperties = {
	[hoop1] = {
		offset = Vector3.new(0, 50, 40), 
		zoomOffset = Vector3.new(0, 9.6, 20),
		zoomDistance = 20,
		speed = 6 

	}
}
workspace.Left.Touched:Connect(function(part)
	if player then
		local tween = tweenService:Create(camera, tweenInfo, CameraChangeProperties)

		tween :Play()

	end
end)

workspace.Right.Touched:Connect(function(part)
	if player then
		local tween = tweenService:Create(camera, tweenInfo, CameraChangeProperties)

		tween :Play()

	end
end)


local isCameraEnabled = true 

local function updateCamera()
	if isCameraEnabled then
		local characterPosition = character.HumanoidRootPart.Position
		local hoopPosition = hoop.Position
		local playerToHoop = hoopPosition - characterPosition
		local cameraTargetPosition = hoopPosition

		local properties = cameraProperties[hoop]
		local desiredCameraPosition = hoopPosition + properties.zoomOffset

		local distanceToHoop = playerToHoop.Magnitude

		if distanceToHoop > properties.zoomDistance then
			desiredCameraPosition = characterPosition + properties.zoomOffset
		end
		
		if distanceToHoop < properties.zoomDistance then
			desiredCameraPosition = characterPosition + properties.zoomOffset
		end

		camera.CFrame = camera.CFrame:Lerp(CFrame.new(desiredCameraPosition, cameraTargetPosition), properties.speed * RunService.RenderStepped:Wait())
	end
end

RunService.RenderStepped:Connect(updateCamera)

------
1 Like

Instead, use:

local CameraChangeProperties = {
	["CFrame"] = CFrame.new(Vector3.new(0,9.6,35))
}

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.