Morph Module teleporting the player to the morph

I need help because whenever I use the morph module it teleports the player to the morphs position and I want it to make the player morph in the same position.

local Morphmodule = {}

function Morphmodule.MorphFunction(player,Morph)
	
	local charClone = Morph:Clone()
	charClone.Name = player.Name
	player.Character = charClone

	local rootPart = charClone:FindFirstChild("HumanoidRootPart") or charClone:FindFirstChild("Torso")
	local plrRoot = player.Character:FindFirstChild("HumanoidRootPart") or  player.Character.Parent:FindFirstChild("Torso")

	if rootPart and plrRoot then
		
		
	
			local newCFrame = plrRoot.CFrame
		charClone:SetPrimaryPartCFrame(newCFrame)
		
		charClone.Parent = workspace
	end


end

return Morphmodule

is your morph anchored? make sure to unanchor it, this also happens with tools, if a tool is anchored and you equip it, it will teleport the player to the tool’s position

I’m pretty sure you have to weld the parts to the player.