diff --git a/baystation12.dme b/baystation12.dme index a1637015425..c7929f31df1 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -490,6 +490,7 @@ #include "code\game\objects\items\devices\lightreplacer.dm" #include "code\game\objects\items\devices\multitool.dm" #include "code\game\objects\items\devices\paicard.dm" +#include "code\game\objects\items\devices\pipe_painter.dm" #include "code\game\objects\items\devices\powersink.dm" #include "code\game\objects\items\devices\scanners.dm" #include "code\game\objects\items\devices\taperecorder.dm" diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm index c9e763e8390..5baffbcb615 100644 --- a/code/ATMOSPHERICS/pipes.dm +++ b/code/ATMOSPHERICS/pipes.dm @@ -527,7 +527,7 @@ obj/machinery/atmospherics/pipe var/build_killswitch = 1 var/obj/machinery/atmospherics/node1 - New() + New() initialize_directions = dir ..() @@ -722,7 +722,7 @@ obj/machinery/atmospherics/pipe icon_state = "manifold_[connected]_[unconnected]" - if(!connected) + if(!connected) del(src) return @@ -951,7 +951,7 @@ obj/machinery/atmospherics/pipe return initialize() - + for(var/obj/machinery/atmospherics/target in get_step(src,1)) if(target.initialize_directions & 2) node1 = target @@ -1028,7 +1028,7 @@ obj/machinery/atmospherics/pipe manifold4w/general/hidden level = 1 icon_state = "manifold4w-f" - + cap name = "pipe endcap" desc = "An endcap for pipes" @@ -1117,28 +1117,9 @@ obj/machinery/atmospherics/pipe/attackby(var/obj/item/weapon/W as obj, var/mob/u if (istype(src, /obj/machinery/atmospherics/pipe/vent)) return ..() - // ===== Handle paints ===== - if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/red)) - src.color = "red" - user << "\red You paint the pipe red." - update_icon() + if(istype(W,/obj/item/device/pipe_painter)) return 1 - if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/blue)) - src.color = "blue" - user << "\red You paint the pipe blue." - update_icon() - return 1 - if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/green)) - src.color = "green" - user << "\red You paint the pipe green." - update_icon() - return 1 - if(istype(W, /obj/item/weapon/reagent_containers/glass/paint/yellow)) - src.color = "yellow" - user << "\red You paint the pipe yellow." - update_icon() - return 1 - + if (!istype(W, /obj/item/weapon/wrench)) return ..() var/turf/T = src.loc diff --git a/code/game/objects/items/devices/pipe_painter.dm b/code/game/objects/items/devices/pipe_painter.dm new file mode 100644 index 00000000000..da297fbb55b --- /dev/null +++ b/code/game/objects/items/devices/pipe_painter.dm @@ -0,0 +1,22 @@ +/obj/item/device/pipe_painter + name = "pipe painter" + icon = 'icons/obj/bureaucracy.dmi' + icon_state = "labeler1" + item_state = "flight" + var/list/modes = list("grey","red","blue","cyan","green","yellow","purple") + var/mode = "grey" + +/obj/item/device/pipe_painter/afterattack(atom/A, mob/user as mob) + 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)) + return + var/obj/machinery/atmospherics/pipe/P = A + P.color = mode + user.visible_message("[user] paints \the [P] [mode].","You paint \the [P] [mode].") + P.update_icon() + +/obj/item/device/pipe_painter/attack_self(mob/user as mob) + mode = input("Which colour do you want to use?","Pipe painter") in modes + +/obj/item/device/pipe_painter/examine() + ..() + usr << "It is in [mode] mode." \ No newline at end of file diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index b67b38324d6..fd525eacdb5 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -103,9 +103,8 @@ icon_state = "hazard" item_state = "hazard" blood_overlay_type = "armor" - allowed = list (/obj/item/device/analyzer, /obj/item/device/flashlight, /obj/item/device/multitool, /obj/item/device/radio, /obj/item/device/t_scanner, \ - /obj/item/weapon/crowbar, /obj/item/weapon/screwdriver, /obj/item/weapon/weldingtool, /obj/item/weapon/wirecutters, /obj/item/weapon/wrench, \ - /obj/item/weapon/tank/emergency_oxygen) + allowed = list (/obj/item/device/analyzer, /obj/item/device/flashlight, /obj/item/device/multitool, /obj/item/device/pipe_painter, /obj/item/device/radio, /obj/item/device/t_scanner, \ + /obj/item/weapon/crowbar, /obj/item/weapon/screwdriver, /obj/item/weapon/weldingtool, /obj/item/weapon/wirecutters, /obj/item/weapon/wrench, /obj/item/weapon/tank/emergency_oxygen) //Lawyer /obj/item/clothing/suit/storage/lawyer/bluejacket diff --git a/html/Thumbs.db b/html/Thumbs.db new file mode 100644 index 00000000000..1529ed02d67 Binary files /dev/null and b/html/Thumbs.db differ diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index 8f3f9d4ea9b..35d839fa22f 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -6011,7 +6011,7 @@ "clE" = (/obj/machinery/light,/obj/structure/closet,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/toxins/xenobiology) "clF" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door_control{id = "xenobio6"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/machinery/door_control{desc = "A remote control-switch for a door to space."; id = "xenobioout6"; name = "Containment Release Switch"; pixel_x = 24; pixel_y = 4; req_access = "55"},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/toxins/xenobiology) "clG" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/solar/starboard) -"clH" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/turf/simulated/floor,/area/atmos) +"clH" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/item/device/multitool{pixel_x = 5},/obj/item/device/radio/headset/headset_eng,/obj/item/weapon/cartridge/atmos,/obj/item/weapon/cartridge/atmos,/obj/item/device/pipe_painter,/turf/simulated/floor,/area/atmos) "clI" = (/obj/structure/stool,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/aft) "clJ" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Engineering"; name = "Engineering Security Doors"; opacity = 0},/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/airlock/maintenance{name = "Engineering Maintainance"; req_access_txt = "10"; req_one_access_txt = null},/turf/simulated/floor/plating,/area/engine/engineering) "clK" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/pump,/turf/simulated/floor{icon_state = "arrival"; dir = 8},/area/atmos)