ID:2095684
 
Code:
Hair = input("What hair style would you like?") in list ("Hair A", "Hair B", "Hair C"
if(usr.Hair == "Hair A")
usr.overlays += 'Hair A.dmi'
Hair = input(src, "What color do you want your hair to be?", "Hair Color",rgb(0,0,0)) as color


Problem description: Basically, I'm trying to make it so at character creation you can choose your hair color. I tried doing this but nothing happens after you choose a color from the wheel, the hair is still the default color that the icon has it as. I'm trying with Hair A currently

That code won't alter the color of the overlay, because you've already added the overlay.
How would I fix that? I tried switching it around to try and change the order the code does it, but nothing happened.
Hair = input(src,"What color do you want your hair to be?", "Hair Color",rgb(0,0,0)) as color
usr.overlays += 'Hair A.dmi'
You're never doing anything with the value of Hair.

var/image/Hair = image('Hair A.dmi')
var/hair_color = input(src,"Blah blah blah")as null|color
if(isnull(hair_color)) return
Hair.color = hair_color
src.overlays += Hair


Or something like that, written off the top of my head, don't expect it to work, it's just an example.
image('Hair A.dmi')

I hate this.

I hate this so much.

Images have no place being created and then discarded for overlays lists. mutable appearances in 511 can't come soon enough.