Parts migrating like geese

I am trying to make a tornado destruction physics thing, but for some reason after the tornado ejects the parts, they just start migrating a specific direction like geese. Here is my code:

repeat
	wait()
until sp:FindFirstChild("WhichTornado")
local tor = sp:FindFirstChild("WhichTornado").Value
local bp = sp:FindFirstChild("TornadoSuckingForce")

if not sp:IsA("UnionOperation") then
	sp.Anchored = false
	sp:BreakJoints()
	game.Debris:AddItem(sp, 60)
	local height = 0
	local timeelapsed = 0
	repeat
		bp.Position = (CFrame.new(tor.Position - Vector3.new(0, tor.Size.Y/2, 0))*CFrame.Angles(0,math.pi*2*((tick()/5)%1),0)*CFrame.new(tor.Size.X/2 + height/30, height, 0)).p -- the x will make the parts get farther away from the tornado, and y will make it move up
		height = height + (tor.Size.Y/100*0.5) -- aka 2% of it's Y size
		timeelapsed = timeelapsed + 1
		wait(1)
	until timeelapsed == 15
	wait(5)
	timeelapsed = 0
	bp:remove()
end