/obj/item/pipe_painter name = "pipe painter" desc = "Used to apply a even coat of paint to pipes. Atmospheric usage reccomended." icon = 'icons/obj/bureaucracy.dmi' icon_state = "labeler1" var/list/modes var/mode pickup_sound = 'sound/items/pickup/device.ogg' drop_sound = 'sound/items/drop/device.ogg' /obj/item/pipe_painter/Initialize(mapload) . = ..() modes = new() for(var/C in GLOB.pipe_colors) modes += "[C]" mode = pick(modes) /obj/item/pipe_painter/afterattack(atom/A, mob/user as mob, proximity) if(!proximity) return if(!istype(A,/obj/machinery/atmospherics/pipe) || istype(A,/obj/machinery/atmospherics/pipe/tank) || istype(A,/obj/machinery/atmospherics/pipe/vent) || istype(A,/obj/machinery/atmospherics/pipe/simple/heat_exchanging) || istype(A,/obj/machinery/atmospherics/pipe/simple/insulated) || !in_range(user, A)) return var/obj/machinery/atmospherics/pipe/P = A P.change_color(GLOB.pipe_colors[mode]) /obj/item/pipe_painter/attack_self(mob/user as mob) var/new_mode = tgui_input_list(user, "Which colour do you want to use?", "Pipe painter", modes) if(!new_mode) return mode = new_mode /obj/item/pipe_painter/examine(mob/user) . = ..() . += "It is in [mode] mode."