ID:264697
 
Code:
obj/item
ShirtM
name = "Shirt"
icon = 'Shirt.dmi'
var
Wear = 0
verb
Change_Color()
set name = "Change Color"
var/r = input("How much red?","Hair Color") as num
var/g = input("How much green?","Hair Color") as num
var/b = input("How much blue?","Hair Color") as num
icon += rgb(r,g,b)
Wear()
if(src.Wear==0)
src.Wear = 1
usr.overlays += 'Shirt.dmi'
usr << "You wear the [src.name]."
src.suffix = "Equipped"
else
src.Wear = 0
usr.overlays -= 'Shirt.dmi'
usr << "You take off the [src.name]."
src.suffix = ""


Problem description: It colors the src in your inventory just fine. Problem is, when you wear the src, it's still black like the icon file.

That would be because you are adding the unmodified icon file, rather than the modified icon of the obj.
In response to Garthor
Could you show me how I may do that?
In response to Ryu-Kazuki
Add the object itself to overlays. Keep in mind that, when you remove it, pretty much every single variable is going to need to be identical to when you added it, or removal won't work.

Also, there's an issue where some variables don't get saved/loaded properly from savefiles, and that'll break removing overlays too.
In response to Garthor
I hate to say I just got completely lost...
In response to Ryu-Kazuki
I got it fixed. Thanks for the help