Welding Right Arm to Humanoid Root Part (R6)

I’m trying to make an attack where the player can grab someone, but I’m having some issues. Right now, my script welds the players hand to the "victim"s humanoid root part, which is then parented to the player’s humanoid root part:

local hand = player.Character:FindFirstChild("Right Hand")
	
	local function weldToHand(object)
		object.Parent = hrp
		
		local weld = Instance.new("Weld")
		weld.Part0 = hand
		weld.Part1 = object
		
		weld.C0 = CFrame.new(0, 0, 0)
		weld.C1 = CFrame.new(0, 0, 0)
		
		weld.Parent = hand
	end

This is server side by the way.

This script actually does partially work, but it is not properly welding to the hand.

What is happening:
When I use the attack on someone, it causes their character to spin around according to the animation that is playing. Their character’s position does not change, only their orientation, shown in the image below:

I’ve tried using WeldConstraints too, but that just gave me the same results. I believe there might be a way to use attachments but I’m not sure how.

Please tell me what I’m doing wrong, I would really appreciate it.

I forgot to mention how I was calling the function:

weldToHand(hitRootPart)

(hitRootPart is the victim’s hrp)

Maybe you could use Instance.new to create an attachment at the end of the hand of the attacking player.

Then when detecting a hit, set the CFrame of the HumRootPart to the attachment on the attacking player. Then follow up with the creation of your welds.

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