function Stick(t,o)local e=Instance.new("\087\101\108\100")e.Part0=t e.Part1=o local N=CFrame.new(t.Position)local r=t.CFrame:inverse()*N local K=o.CFrame:inverse()*N e.C0=r e.C1=K e.Parent=t end function Get(t)if t.ClassName=="\080\097\114\116"then Stick(script.Parent.Handle,t)t.Anchored=false else local o=t:GetChildren()for t=1,#o,1 do Get(o[t])end end end function Finale()Get(script.Parent)end script.Parent.Equipped:Connect(Finale)script.Parent.Unequipped:Connect(Finale)Finale()


function Stick(x, y)
	local W = Instance.new("Weld")
	W.Part0 = x
	W.Part1 = y
	local CJ = CFrame.new(x.Position)
	local C0 = x.CFrame:inverse()*CJ
	local C1 = y.CFrame:inverse()*CJ
	W.C0 = C0
	W.C1 = C1
	W.Parent = x
end

function Get(A)
	if A.ClassName == ("Part") then
		Stick(script.Parent.Handle, A)
		A.Anchored = false
	else
		local C = A:GetChildren()
		for i=1, #C do
		Get(C[i])
		end
	end
end

function Finale()
	Get(script.Parent)
end

script.Parent.Equipped:Connect(Finale)
script.Parent.Unequipped:Connect(Finale)
Finale()
