function onTeamChanged(o)wait(1)local r=o.Character if r==nil then return end if o.Neutral then local o=r:findFirstChild("\066\111\100\121 \067\111\108\111\114\115")if not o then return end;(o:clone()).Parent=r o.Parent=nil else local O=r:findFirstChild("\072\101\097\100")local x=r:findFirstChild("\084\111\114\115\111")local S=r:findFirstChild("\076\101\102\116 \065\114\109")local y=r:findFirstChild("\082\105\103\104\116 \065\114\109")local m=r:findFirstChild("\076\101\102\116 \076\101\103")local d=r:findFirstChild("\082\105\103\104\116 \076\101\103")if O then O.BrickColor=BrickColor.new(24)end if x then x.BrickColor=o.TeamColor end if S then S.BrickColor=BrickColor.new(26)end if y then y.BrickColor=BrickColor.new(26)end if m then m.BrickColor=BrickColor.new(26)end if d then d.BrickColor=BrickColor.new(26)end end end function onPlayerPropChanged(o,r)if o=="\067\104\097\114\097\099\116\101\114"then onTeamChanged(r)end if o=="\084\101\097\109\067\111\108\111\114"or o=="\078\101\117\116\114\097\108"then onTeamChanged(r)end end local o=game.Players:GetPlayerFromCharacter(script.Parent)o.Changed:connect(function(r)onPlayerPropChanged(r,o)end)onTeamChanged(o)
-- TEAM COLORS

function onTeamChanged(player)
	wait(1)

	local char = player.Character
	if char == nil then
		return
	end

	if player.Neutral then
		-- Replacing the current BodyColor object will force a reset
		local old = char:findFirstChild("Body Colors")
		if not old then
			return
		end
		old:clone().Parent = char
		old.Parent = nil
	else
		local head = char:findFirstChild("Head")
		local torso = char:findFirstChild("Torso")
		local left_arm = char:findFirstChild("Left Arm")
		local right_arm = char:findFirstChild("Right Arm")
		local left_leg = char:findFirstChild("Left Leg")
		local right_leg = char:findFirstChild("Right Leg")

		if head then
			head.BrickColor = BrickColor.new(24)
		end
		if torso then
			torso.BrickColor = player.TeamColor
		end
		if left_arm then
			left_arm.BrickColor = BrickColor.new(26)
		end
		if right_arm then
			right_arm.BrickColor = BrickColor.new(26)
		end
		if left_leg then
			left_leg.BrickColor = BrickColor.new(26)
		end
		if right_leg then
			right_leg.BrickColor = BrickColor.new(26)
		end
	end
end

function onPlayerPropChanged(property, player)
	if property == "Character" then
		onTeamChanged(player)
	end
	if property == "TeamColor" or property == "Neutral" then
		onTeamChanged(player)
	end
end

local cPlayer = game.Players:GetPlayerFromCharacter(script.Parent)
cPlayer.Changed:connect(function(property)
	onPlayerPropChanged(property, cPlayer)
end)
onTeamChanged(cPlayer)
