Motor6D Pointing at Character

I’m trying to make my Motor6D light, point at my character as a ‘Following Spotlight’.

Here is the look of my light, and the explorer:
light
explorer

This is my current code:

--- Services ---
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")

--- Declarations ---
local Player = Players:WaitForChild("Danii_ox")
local Character = Player.Character or Player.CharacterAdded:Wait()
local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart")

RunService.Heartbeat:Connect(function(step)
	
	local goalPos = HumanoidRootPart.Position
	
	local RotationOffset = (script.Parent.PrimaryPart.CFrame - script.Parent.PrimaryPart.CFrame.p):inverse()

	local RealPos = -(HumanoidRootPart.CFrame.p - goalPos).unit * 5000

	local TargetCFrame = RotationOffset * CFrame.new(Vector3.new(0, 0, 0), RealPos)
	
	script.Parent.Holder.Connect.Motor6D.DesiredAngle = math.rad(TargetCFrame) -- Y-axis & Z-axis
	script.Parent.Body.Hinge.Motor6D.DesiredAngle = math.rad(TargetCFrame) -- X-axis
	
end)

Current output:
output