diff --git a/code/game/machinery/dye_generator.dm b/code/game/machinery/dye_generator.dm
index e9b65c553e5..16d11e377a6 100644
--- a/code/game/machinery/dye_generator.dm
+++ b/code/game/machinery/dye_generator.dm
@@ -54,6 +54,7 @@
user.visible_message("[user] fills the [W] up with some dye.","You fill the [W] up with some hair dye.")
var/obj/item/hair_dye_bottle/HD = W
HD.dye_color = dye_color
+ HD.update_dye_overlay()
else
..()
@@ -62,8 +63,8 @@
/obj/item/hair_dye_bottle
name = "Hair Dye Bottle"
desc = "A refillable bottle used for holding hair dyes of all sorts of colors."
- icon = 'icons/obj/drinks.dmi' //placeholder
- icon_state = "water" //placeholder
+ icon = 'icons/obj/items.dmi'
+ icon_state = "hairdyebottle"
throwforce = 0
throw_speed = 4
throw_range = 7
@@ -71,6 +72,16 @@
w_class = 1.0
var/dye_color = "#000000"
+/obj/item/hair_dye_bottle/New()
+ ..()
+ update_dye_overlay()
+
+/obj/item/hair_dye_bottle/proc/update_dye_overlay()
+ overlays.Cut()
+ var/image/I = new('icons/obj/items.dmi', "hairdyebottle-overlay")
+ I.color = dye_color
+ overlays += I
+
/obj/item/hair_dye_bottle/attack(mob/living/carbon/M as mob, mob/user as mob)
if(user.a_intent != "help")
..()
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index dd6cf13fc1e..ebf42b90da2 100644
Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ