Why does my weld freeze the player

Hello, I made a script that welds a union to the players, but the weld freezes the player and the player ends up like this
https://gyazo.com/e42c1e1666aab6c5b1b3f2535aa1a444

script.Spin.OnServerEvent:Connect(function(plr)
	char = plr.Character
	Torso = char.Torso
	tornado = game.ReplicatedStorage.TOOLS.Tornado:Clone()
	wield = Instance.new("Weld")
	tornado.CFrame = Torso.CFrame
	wield.Part0 = Torso
	wield.Part1 = tornado
	wield.C0 = Torso.CFrame:Inverse()
	wield.C1 = tornado.CFrame:Inverse()
	wield.Parent = tornado
	tornado.Parent = game.Workspace
	tornado.CFrame = tornado.CFrame * CFrame.Angles(0,0,-20.4)
end)

I tried making the union bigger, and I tried welding it to the humanoid root part.

1 Like

If the tornado has CanCollide set to true that might be causing the issue. Try adding an extra line that sets it to false, like this:

tornado.CanCollide = false

I changed the tornado’s CanCollide to off from properties & I added a extra line that turns it off, but it doesn’t seem to be changing anything.

Try unanchoring the union in Studio.

1 Like

Just tried unachoring it, it worked, thanks!