I am trying to put a piece of armor on to the players UpperTorso. So I'm creating a weld between an object that is in the exact center of the players UpperTorso and the armor piece. But I need the armor piece to be a couple of studs forward so that it's on the front of the players torso and not inside of it. I tried using CFrame but I believe I'm doing something wrong.
ArmorChest = game.ServerStorage.ArmorChest
ArmorConnect = game.ServerStorage.ArmorConnect
script.Parent.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") and not hit.Parent.UpperTorso:FindFirstChild("ArmorChest") then
Char = hit.Parent
ArmorClone = ArmorChest:Clone()
ArmorClone.Parent = Char.UpperTorso
ArmorConnectClone = ArmorConnect:Clone()
ArmorConnectClone.Parent = Char
ArmorConnectWeld = Instance.new("Weld")
ArmorChestWeld = Instance.new("Weld")
ArmorConnectWeld.Parent = Char
ArmorChestWeld.Parent = Char
ArmorConnectClone.CFrame = CFrame:ToWorldSpace(Char.UpperTorso.CFrame)
ArmorConnectWeld.Part0 = Char.UpperTorso
ArmorConnectWeld.Part1 = Char.ArmorConnect
ArmorClone.CFrame = (ArmorConnectClone.CFrame + Vector3.new(2,0,0))
ArmorChestWeld.Part0 = Char.ArmorConnect
ArmorChestWeld.Part1 = Char.UpperTorso.ArmorChest
else
end
end)
It gives the following error, Workspace.EquipButton.Script:15: attempt to call method 'ToWorldSpace' (a nil value)

6 comments
And yeah you can change the CFrame to fix it if it won't look right.
No it still does not work.
Does it throw some error
Wait, let talk about this on community chat
I figured it out. I had to change the C1 of the weld, not CFrame the part and then do the weld.
Ok then