Character Not Changing Colour

Hi

I have a big script set up to load a character etc. In one part of it I set the players skin colour. Only the head changes colour and I’m not sure why. I can see that through parts are being recognised through the if statements but they’re not being coloured

The part of the script that handles skin colour:

	for i, v in pairs(rig:GetDescendants()) do
		if v:IsA("Part") or v:IsA("MeshPart") or v:IsA("BasePart") then
			if v.Name ~= "Handle" then
				
				print("Should change colour")
				v.Color = Color3.fromRGB(c1, c2, c3)
				
			end
			
		end
	end
end

local function ProcessSkinColour(value, rig)

	if value == "SkinColour1" then
		ChangeSkinColour(value, rig, 86, 66, 54)
	elseif value == "SkinColour2" then
		ChangeSkinColour(value, rig,160, 132, 79)
	elseif value == "SkinColour3" then
		ChangeSkinColour(value, rig, 147, 87, 49)
	elseif value == "SkinColour4" then
		print("is4")
		ChangeSkinColour(value, rig, 234, 187, 140)
	end

end

Edit: Process skin colour is the first function that gets called

1 Like

Why not using the BodyColors instance inside the Character?
If there is one instance of that in your character, it kinda ignores the colors of parts, and the bodyParts uses the colors in BodyColors instance

Thanks for your help! This was the solution :smile:

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.