local x=game:GetService("\074\111\105\110\116\115\083\101\114\118\105\099\101")local e=workspace:PGSIsEnabled()function MakeWeld(e,P,S,j)if S==nil then S="\087\101\108\100"end local s=Instance.new(S,x)s.Part0=e s.Part1=P s.C0=e.CFrame:inverse()*e.CFrame s.C1=P.CFrame:inverse()*e.CFrame if S=="\077\111\116\111\114"and j~=nil then s.MaxVelocity=j end return s end function ModelWeld(x,e)if x:IsA("\066\097\115\101\080\097\114\116")and x.Parent.Name~="\072\111\111\100"then MakeWeld(e,x,"\087\101\108\100")for x,P in pairs(x:GetChildren())do if P~=nil and P:IsA("\066\097\115\101\080\097\114\116")then ModelWeld(P,e)end end elseif x:IsA("\077\111\100\101\108")then for x,P in pairs(x:GetChildren())do ModelWeld(P,e)end end end function UnAnchor(x)if x:IsA("\066\097\115\101\080\097\114\116")then x.Anchored=false end for x,e in pairs(x:GetChildren())do UnAnchor(e)end end
--[[Weld functions]]

local JS = game:GetService("JointsService")
local PGS_ON = workspace:PGSIsEnabled()

function MakeWeld(x, y, type, s)
	if type == nil then
		type = "Weld"
	end
	local W = Instance.new(type, JS)
	W.Part0 = x
	W.Part1 = y
	W.C0 = x.CFrame:inverse() * x.CFrame
	W.C1 = y.CFrame:inverse() * x.CFrame
	if type == "Motor" and s ~= nil then
		W.MaxVelocity = s
	end
	return W
end

function ModelWeld(a, b)
	if a:IsA("BasePart") and a.Parent.Name ~= "Hood" then
		MakeWeld(b, a, "Weld")
		for i, v in pairs(a:GetChildren()) do
			if v ~= nil and v:IsA("BasePart") then
				ModelWeld(v, b)
			end
		end
	elseif a:IsA("Model") then
		for i, v in pairs(a:GetChildren()) do
			ModelWeld(v, b)
		end
	end
end

function UnAnchor(a)
	if a:IsA("BasePart") then
		a.Anchored = false
	end
	for i, v in pairs(a:GetChildren()) do
		UnAnchor(v)
	end
end
