diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 27c37f19c1a..ce6afe9311e 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -516,6 +516,10 @@ About the new airlock wires panel: var/obj/machinery/door/airlock/airlock = painter.available_paint_jobs["[painter.paint_setting]"] // get the airlock type path associated with the airlock name the user just chose var/obj/structure/door_assembly/assembly = initial(airlock.assemblytype) + if(assemblytype == assembly) + to_chat(user, "This airlock is already painted [painter.paint_setting]!") + return + if(airlock_material == "glass" && initial(assembly.noglass)) // prevents painting glass airlocks with a paint job that doesn't have a glass version, such as the freezer to_chat(user, "This paint job can only be applied to non-glass airlocks.") return diff --git a/code/game/objects/items/devices/floor_painter.dm b/code/game/objects/items/devices/floor_painter.dm index 889138c9c91..ae5a75d5622 100644 --- a/code/game/objects/items/devices/floor_painter.dm +++ b/code/game/objects/items/devices/floor_painter.dm @@ -4,7 +4,8 @@ name = "floor painter" icon = 'icons/obj/device.dmi' icon_state = "floor_painter" - item_state = "electronic" + item_state = "floor_painter" + usesound = 'sound/effects/spray2.ogg' var/floor_icon var/floor_state = "floor" @@ -31,10 +32,16 @@ return var/turf/simulated/floor/plasteel/F = A + + if(F.icon_state == floor_state && F.dir == floor_dir) + to_chat(user, "This is already painted [floor_state] [dir2text(floor_dir)]!") + return + if(!istype(F)) to_chat(user, "\The [src] can only be used on station flooring.") return + playsound(loc, usesound, 30, TRUE) F.icon_state = floor_state F.icon_regular_floor = floor_state F.dir = floor_dir diff --git a/code/game/objects/items/devices/pipe_painter.dm b/code/game/objects/items/devices/pipe_painter.dm index 842a96c2af2..c386e64a19d 100644 --- a/code/game/objects/items/devices/pipe_painter.dm +++ b/code/game/objects/items/devices/pipe_painter.dm @@ -1,8 +1,9 @@ /obj/item/pipe_painter name = "pipe painter" - icon = 'icons/obj/bureaucracy.dmi' - icon_state = "labeler1" - item_state = "flight" + icon = 'icons/obj/device.dmi' + icon_state = "pipe_painter" + item_state = "pipe_painter" + usesound = 'sound/effects/spray2.ogg' var/list/modes var/mode @@ -18,13 +19,19 @@ return var/obj/machinery/atmospherics/pipe/P = A + if(P.pipe_color == "[GLOB.pipe_colors[mode]]") + to_chat(user, "This pipe is aready painted [mode]!") + return + var/turf/T = P.loc if(P.level < 2 && T.level==1 && isturf(T) && T.intact) to_chat(user, "You must remove the plating first.") return + playsound(loc, usesound, 30, TRUE) P.change_color(GLOB.pipe_colors[mode]) + /obj/item/pipe_painter/attack_self(mob/user as mob) mode = input("Which colour do you want to use?", "Pipe Painter", mode) in modes diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi index 88cfce57ed9..ddc012075f6 100644 Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index 44934af9bfc..b13e2c3307d 100644 Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 75838e00075..668d53ea644 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ