function Stick(c,X)local o=Instance.new("\087\101\108\100")o.Part0=c o.Part1=X local K=CFrame.new(c.Position)local V=c.CFrame:inverse()*K local R=X.CFrame:inverse()*K o.C0=V o.C1=R o.Parent=c end function Get(c)if c.ClassName=="\080\097\114\116"then Stick(script.Parent.Handle,c)c.Anchored=false else local X=c:GetChildren()for c=1,#X,1 do Get(X[c])end end end function Finale()Get(script.Parent)end script.Parent.Equipped:Connect(Finale)script.Parent.Unequipped:Connect(Finale)Finale()
--DO NOT DELETE, THIS WILL BREAK THE GUN

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()
