diff --git a/_maps/RandomZLevels/blackmesa.dmm b/_maps/RandomZLevels/blackmesa.dmm index 9d033c53403..23face4a047 100644 --- a/_maps/RandomZLevels/blackmesa.dmm +++ b/_maps/RandomZLevels/blackmesa.dmm @@ -11479,11 +11479,6 @@ /obj/effect/spawner/random/bioluminescent_plant, /turf/open/misc/dirt/planet/xen, /area/awaymission/black_mesa/xen/freeman_puzzle) -"qEs" = ( -/obj/structure/closet/crate/large, -/obj/item/ammo_box/magazine/mp5, -/turf/open/floor/plating, -/area/awaymission/black_mesa/science_tunnel) "qEt" = ( /obj/effect/turf_decal/stripes{ dir = 4 @@ -69308,7 +69303,7 @@ ozz jJJ lwG pYd -qEs +pYd ozz ozz xEP diff --git a/_maps/RandomZLevels/mothership_astrum.dmm b/_maps/RandomZLevels/mothership_astrum.dmm index b2114a07de3..23d188da3be 100644 --- a/_maps/RandomZLevels/mothership_astrum.dmm +++ b/_maps/RandomZLevels/mothership_astrum.dmm @@ -2045,10 +2045,6 @@ }, /turf/open/floor/wood, /area/awaymission/mothership_astrum/deck5) -"Ez" = ( -/obj/structure/table/abductor, -/turf/open/floor/mineral/abductor, -/area/awaymission/mothership_astrum/halls) "ED" = ( /turf/closed/wall, /area/awaymission/mothership_astrum/deck2) @@ -37103,7 +37099,7 @@ ud ud ud ud -Ez +zt jH ee ee diff --git a/_maps/RandomZLevels/research2.dmm b/_maps/RandomZLevels/research2.dmm index a3e258fcd9b..51c20cf7364 100644 --- a/_maps/RandomZLevels/research2.dmm +++ b/_maps/RandomZLevels/research2.dmm @@ -3131,9 +3131,6 @@ }, /turf/open/floor/iron/white, /area/awaymission/research/interior/medbay) -"ji" = ( -/turf/closed/mineral, -/area/awaymission/research/exterior) "jj" = ( /obj/structure/dresser, /turf/open/floor/wood, @@ -35038,7 +35035,7 @@ ad ad ad ad -ji +ad ad ad ad diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 1c66c52726e..1459d4ca23d 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -26852,6 +26852,7 @@ }, /obj/structure/filingcabinet/chestdrawer, /obj/effect/turf_decal/tile/brown/anticorner/contrasted, +/obj/machinery/keycard_auth/directional/south, /turf/open/floor/iron, /area/station/cargo/qm) "hqH" = ( @@ -32584,6 +32585,7 @@ /obj/item/computer_hardware/hard_drive/portable/quartermaster, /obj/item/gps/mining, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/item/paper_bin/carbon, /turf/open/floor/iron, /area/station/cargo/qm) "iTV" = ( @@ -52598,6 +52600,9 @@ /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 4 }, +/obj/machinery/modular_computer/console/preset/id{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/qm) "oig" = ( @@ -68766,6 +68771,9 @@ /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 1 }, +/obj/machinery/computer/security/telescreen/vault{ + pixel_y = 30 + }, /turf/open/floor/iron, /area/station/cargo/qm) "sEm" = ( @@ -69130,9 +69138,6 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/door/airlock/mining{ - name = "Quartermaster's Office" - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, @@ -69141,6 +69146,9 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron, /area/station/cargo/qm) "sIP" = ( @@ -71360,11 +71368,10 @@ /area/station/command/bridge) "tmx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/paper_bin/carbon, /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 8 }, +/obj/machinery/pdapainter/supply, /turf/open/floor/iron, /area/station/cargo/qm) "tmy" = ( @@ -73148,9 +73155,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining{ - name = "Quartermaster's Quarters" - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, @@ -73158,6 +73162,9 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron, /area/station/cargo/qm) "tHC" = ( @@ -136687,7 +136694,7 @@ aad aad aad aad -rje +cez sEi buT jCx @@ -137207,7 +137214,7 @@ iwW uni oif hqC -rje +cez aad uUz juo diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index 6a6157b2ec1..6552f143c9a 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -2681,11 +2681,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/requests_console/directional/south{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Bridge"; departmentType = 5; - name = "Bridge Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Bridge Requests Console" }, /turf/open/floor/wood, /area/station/command/meeting_room) @@ -2806,11 +2806,11 @@ /obj/machinery/light/directional/north, /obj/machinery/requests_console/directional/north{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Chief Medical Officer's Desk"; departmentType = 5; - name = "Chief Medical Officer's Requests Console"; - assistance_requestable = 1; - anon_tips_receiver = 1 + name = "Chief Medical Officer's Requests Console" }, /obj/item/toy/figure/cmo{ pixel_x = -17; @@ -6925,11 +6925,11 @@ "cjn" = ( /obj/machinery/requests_console/directional/south{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Bridge"; departmentType = 5; - name = "Bridge Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Bridge Requests Console" }, /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -9232,11 +9232,11 @@ /obj/structure/window/reinforced, /obj/machinery/rnd/production/circuit_imprinter, /obj/machinery/requests_console/directional/east{ + assistance_requestable = 1; department = "Engineering"; departmentType = 3; name = "Engineering Requests Console"; - supplies_requestable = 1; - assistance_requestable = 1 + supplies_requestable = 1 }, /turf/open/floor/iron/dark, /area/station/engineering/lobby) @@ -11060,8 +11060,8 @@ /area/station/maintenance/port/greater) "dyc" = ( /obj/item/toy/snowball{ - pixel_y = -5; - pixel_x = 6 + pixel_x = 6; + pixel_y = -5 }, /obj/machinery/light/small/directional/south, /turf/open/misc/asteroid/snow/standard_air, @@ -11410,11 +11410,11 @@ /obj/machinery/light/directional/east, /obj/effect/turf_decal/tile/red/full, /obj/machinery/requests_console/directional/east{ + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Security"; departmentType = 5; - name = "Security Requests Console"; - assistance_requestable = 1; - anon_tips_receiver = 1 + name = "Security Requests Console" }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/checkpoint/medical) @@ -14450,10 +14450,10 @@ /obj/structure/cable, /obj/machinery/light/dim/directional/south, /obj/machinery/requests_console/directional/south{ + assistance_requestable = 1; department = "Medbay"; departmentType = 1; - name = "Medbay Requests Console"; - assistance_requestable = 1 + name = "Medbay Requests Console" }, /turf/open/floor/iron/white, /area/station/medical/cryo) @@ -15325,10 +15325,10 @@ dir = 8 }, /obj/machinery/requests_console/directional/south{ + assistance_requestable = 1; department = "Chemistry"; departmentType = 1; - name = "Chemistry Requests Console"; - assistance_requestable = 1 + name = "Chemistry Requests Console" }, /turf/open/floor/iron/white, /area/station/medical/pharmacy) @@ -15529,11 +15529,11 @@ "eUw" = ( /obj/effect/turf_decal/tile/red/anticorner, /obj/machinery/requests_console/directional/north{ + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Security"; departmentType = 5; - name = "Security Requests Console"; - assistance_requestable = 1; - anon_tips_receiver = 1 + name = "Security Requests Console" }, /turf/open/floor/iron/dark/textured_corner{ dir = 1 @@ -19798,11 +19798,11 @@ /area/station/maintenance/port/aft) "goh" = ( /obj/machinery/requests_console/directional/south{ + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Security"; departmentType = 5; - name = "Security Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Security Requests Console" }, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -20207,11 +20207,11 @@ /obj/machinery/computer/security/hos, /obj/machinery/requests_console/directional/north{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Head of Security's Desk"; departmentType = 5; - name = "Head of Security Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Head of Security Requests Console" }, /obj/machinery/button/door/directional/north{ id = "hosspace"; @@ -32132,7 +32132,7 @@ /turf/open/openspace, /area/station/science/ordnance/office) "kin" = ( -/obj/structure/table, +/obj/machinery/pdapainter/supply, /turf/open/floor/carpet, /area/station/cargo/qm) "kir" = ( @@ -35250,15 +35250,14 @@ "lfG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/door/airlock/mining/glass{ - id_tag = "Quatermaster"; - name = "Quartermaster" - }, /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, /obj/effect/turf_decal/tile/brown/fourcorners, +/obj/machinery/door/airlock/command{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron, /area/station/cargo/qm) "lfL" = ( @@ -36316,11 +36315,11 @@ "lwv" = ( /obj/machinery/requests_console/directional/east{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Telecomms Admin"; departmentType = 5; - name = "Telecomms Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Telecomms Requests Console" }, /turf/open/floor/iron, /area/station/tcommsat/computer) @@ -40038,8 +40037,8 @@ name = "Man of Snow" }, /obj/item/clothing/head/snowman{ - pixel_y = 9; - name = "Head of Snow" + name = "Head of Snow"; + pixel_y = 9 }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) @@ -41479,10 +41478,10 @@ /area/mine/laborcamp) "nnQ" = ( /obj/machinery/requests_console/directional/south{ + assistance_requestable = 1; department = "Atmospherics"; departmentType = 3; name = "Atmospherics Requests Console"; - assistance_requestable = 1; supplies_requestable = 1 }, /obj/machinery/light/directional/south, @@ -43060,6 +43059,7 @@ pixel_y = 4 }, /obj/item/folder/yellow, +/obj/machinery/keycard_auth/directional/west, /turf/open/floor/iron, /area/station/cargo/qm) "nNv" = ( @@ -43582,10 +43582,10 @@ pixel_y = 17 }, /obj/machinery/requests_console/directional/south{ - department = "Law Office"; - name = "Law Office Requests Console"; anon_tips_receiver = 1; - assistance_requestable = 1 + assistance_requestable = 1; + department = "Law Office"; + name = "Law Office Requests Console" }, /obj/structure/disposalpipe/segment{ dir = 5 @@ -43684,11 +43684,11 @@ }, /obj/machinery/requests_console/directional/south{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Head of Personnel's Desk"; departmentType = 5; - name = "Head of Personnel's Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Head of Personnel's Requests Console" }, /turf/open/floor/iron, /area/station/command/heads_quarters/hop) @@ -44389,6 +44389,10 @@ /obj/effect/turf_decal/tile/brown{ dir = 4 }, +/obj/machinery/modular_computer/console/preset/id, +/obj/machinery/computer/security/telescreen/vault{ + pixel_y = 30 + }, /turf/open/floor/iron, /area/station/cargo/qm) "ogL" = ( @@ -45134,12 +45138,12 @@ "orU" = ( /obj/machinery/requests_console/directional/north{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director's Requests Console"; - receive_ore_updates = 1; - assistance_requestable = 1; - anon_tips_receiver = 1 + receive_ore_updates = 1 }, /obj/machinery/pdapainter/research, /turf/open/floor/iron/cafeteria, @@ -51282,10 +51286,10 @@ /area/station/science/ordnance/freezerchamber) "qrI" = ( /obj/machinery/requests_console/directional/north{ + assistance_requestable = 1; department = "Chapel"; departmentType = 1; - name = "Chapel Requests Console"; - assistance_requestable = 1 + name = "Chapel Requests Console" }, /turf/open/floor/iron/dark, /area/station/service/chapel/office) @@ -54136,11 +54140,11 @@ "ror" = ( /obj/structure/closet/secure_closet/security/engine, /obj/machinery/requests_console/directional/north{ + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Security"; departmentType = 5; - name = "Security Requests Console"; - assistance_requestable = 1; - anon_tips_receiver = 1 + name = "Security Requests Console" }, /obj/item/book/manual/wiki/security_space_law, /obj/effect/turf_decal/tile/red, @@ -54179,9 +54183,6 @@ /turf/open/floor/plating, /area/station/maintenance/aft/lesser) "rpu" = ( -/obj/machinery/computer/security/telescreen/vault{ - pixel_y = 30 - }, /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ dir = 4 @@ -56867,11 +56868,11 @@ }, /obj/machinery/computer/security/qm, /obj/machinery/requests_console/directional/west{ + announcementConsole = 1; + assistance_requestable = 1; department = "Quartermaster's Desk"; name = "Quartermaster's Desk Requests Console"; - announcementConsole = 1; - supplies_requestable = 1; - assistance_requestable = 1 + supplies_requestable = 1 }, /turf/open/floor/iron, /area/station/cargo/qm) @@ -59486,11 +59487,11 @@ dir = 1 }, /obj/machinery/requests_console/directional/south{ + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Security"; departmentType = 5; - name = "Security Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Security Requests Console" }, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -59613,10 +59614,10 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/requests_console/directional/west{ announcementConsole = 1; + assistance_requestable = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer's Requests Console"; - assistance_requestable = 1; supplies_requestable = 1 }, /turf/open/floor/iron/dark, @@ -59711,11 +59712,11 @@ /obj/structure/filingcabinet, /obj/machinery/requests_console/directional/west{ announcementConsole = 1; + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Captain's Desk"; departmentType = 5; - name = "Captain's Requests Console"; - anon_tips_receiver = 1; - assistance_requestable = 1 + name = "Captain's Requests Console" }, /turf/open/floor/wood, /area/station/command/heads_quarters/captain) @@ -60480,11 +60481,11 @@ "tqw" = ( /obj/machinery/computer/secure_data, /obj/machinery/requests_console/directional/north{ + anon_tips_receiver = 1; + assistance_requestable = 1; department = "Security"; departmentType = 5; - name = "Security Requests Console"; - assistance_requestable = 1; - anon_tips_receiver = 1 + name = "Security Requests Console" }, /obj/effect/turf_decal/tile/red{ dir = 1 @@ -60806,10 +60807,10 @@ /obj/item/grenade/chem_grenade/cleaner, /obj/item/reagent_containers/spray/cleaner, /obj/machinery/requests_console/directional/south{ + assistance_requestable = 1; department = "Janitorial"; departmentType = 1; - name = "Janitorial Requests Console"; - assistance_requestable = 1 + name = "Janitorial Requests Console" }, /turf/open/floor/iron, /area/station/service/janitor) diff --git a/_maps/map_files/KiloStation/KiloStation.dmm b/_maps/map_files/KiloStation/KiloStation.dmm index 49807b8805b..08aa1b50ccd 100644 --- a/_maps/map_files/KiloStation/KiloStation.dmm +++ b/_maps/map_files/KiloStation/KiloStation.dmm @@ -35322,26 +35322,15 @@ /turf/open/floor/iron, /area/station/hallway/primary/starboard) "jNA" = ( -/obj/structure/table, -/obj/item/flashlight/lamp/green{ - pixel_x = -5; - pixel_y = 7 - }, -/obj/item/clothing/mask/cigarette/cigar{ - pixel_x = 8; - pixel_y = 4 - }, -/obj/item/clothing/mask/cigarette/cigar{ - pixel_x = 10; - pixel_y = -1 - }, -/obj/item/lighter{ - pixel_x = 11; - pixel_y = -7 - }, /obj/item/toy/figure/qm{ pixel_x = -17 }, +/obj/machinery/modular_computer/console/preset/id{ + dir = 1 + }, +/obj/machinery/keycard_auth/directional/east{ + pixel_y = 26 + }, /turf/open/floor/carpet/orange, /area/station/cargo/qm) "jNW" = ( @@ -57289,14 +57278,14 @@ /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, /obj/structure/disposalpipe/segment{ dir = 4 }, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron/dark, /area/station/cargo/qm) "qez" = ( @@ -57965,6 +57954,39 @@ /obj/item/computer_hardware/hard_drive/portable/quartermaster, /obj/item/computer_hardware/hard_drive/portable/quartermaster, /obj/item/pen/fountain, +/obj/item/stamp{ + pixel_x = 8; + pixel_y = 2 + }, +/obj/item/stamp/denied{ + pixel_x = 8; + pixel_y = 6 + }, +/obj/item/stamp/qm{ + pixel_x = 8; + pixel_y = 10 + }, +/obj/item/paper_bin{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/pen, +/obj/item/lighter{ + pixel_x = 11; + pixel_y = -7 + }, +/obj/item/clothing/mask/cigarette/cigar{ + pixel_x = 8; + pixel_y = 4 + }, +/obj/item/clothing/mask/cigarette/cigar{ + pixel_x = 10; + pixel_y = -1 + }, +/obj/item/flashlight/lamp/green{ + pixel_x = -5; + pixel_y = 7 + }, /turf/open/floor/carpet/orange, /area/station/cargo/qm) "qny" = ( @@ -65458,14 +65480,6 @@ icon_state = "panelscorched" }, /area/station/maintenance/disposal/incinerator) -"svV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, -/obj/effect/mapping_helpers/airlock/access/all/supply/qm, -/turf/open/floor/iron/dark, -/area/station/cargo/qm) "svW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -72187,12 +72201,12 @@ req_access = list("mail_sorting") }, /obj/item/clipboard{ - pixel_y = -2; - pixel_x = 3 + pixel_x = 3; + pixel_y = -2 }, /obj/item/folder{ - pixel_y = -2; - pixel_x = 3 + pixel_x = 3; + pixel_y = -2 }, /obj/structure/desk_bell{ pixel_x = -8; @@ -83777,32 +83791,15 @@ /turf/open/floor/iron, /area/station/hallway/primary/central/fore) "xxQ" = ( -/obj/structure/table, /obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/item/paper_bin{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/stamp/qm{ - pixel_x = 8; - pixel_y = 10 - }, -/obj/item/stamp/denied{ - pixel_x = 8; - pixel_y = 6 - }, -/obj/item/stamp{ - pixel_x = 8; - pixel_y = 2 - }, -/obj/item/pen, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/obj/machinery/pdapainter/supply, /turf/open/floor/iron/dark, /area/station/cargo/qm) "xxW" = ( @@ -86213,11 +86210,11 @@ /turf/open/floor/plating, /area/space/nearstation) "yfv" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron/dark, /area/station/cargo/qm) "yfA" = ( @@ -126492,9 +126489,9 @@ sdy jdZ rZV dYw +dYw cBP -cBP -svV +yfv dYw lmO orD diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 38450448a7f..46681dd5a5e 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -20578,10 +20578,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/medical/break_room) -"hyw" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/station/cargo/qm) "hyC" = ( /obj/structure/disposaloutlet{ desc = "An outlet for the pneumatic disposal system. This one seems designed for rapid corpse disposal."; @@ -28318,6 +28314,7 @@ pixel_x = -6; pixel_y = 4 }, +/obj/machinery/keycard_auth/directional/south, /turf/open/floor/wood, /area/station/cargo/qm) "kat" = ( @@ -31357,6 +31354,9 @@ /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) "ldg" = ( +/obj/machinery/modular_computer/console/preset/id{ + dir = 1 + }, /turf/open/floor/wood, /area/station/cargo/qm) "ldJ" = ( @@ -33953,6 +33953,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/computer/security/telescreen/vault{ + pixel_y = 30 + }, /turf/open/floor/wood, /area/station/cargo/qm) "mbk" = ( @@ -35854,14 +35857,14 @@ /turf/open/floor/wood, /area/station/security/courtroom) "mLR" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, /obj/structure/cable, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron, /area/station/cargo/qm) "mLS" = ( @@ -39365,6 +39368,10 @@ }, /turf/open/space/basic, /area/space) +"nWZ" = ( +/obj/machinery/pdapainter/supply, +/turf/open/floor/carpet/red, +/area/station/cargo/qm) "nXm" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -47055,9 +47062,6 @@ /obj/item/folder/blue, /obj/item/storage/secure/briefcase, /obj/item/assembly/flash/handheld, -/obj/machinery/computer/security/telescreen/vault{ - pixel_y = 30 - }, /turf/open/floor/wood, /area/station/command/heads_quarters/hop) "qJz" = ( @@ -86822,7 +86826,7 @@ jRM uKm thQ lme -hyw +bJR fXw pCl iAd @@ -87336,7 +87340,7 @@ jRM bgx mmR wRj -hyw +bJR xgw xgw xgw @@ -87593,11 +87597,11 @@ dka bgx mmR ekY -hyw +bJR iGD kga fRQ -xgw +nWZ eDi geK krf diff --git a/_maps/map_files/generic/CentCom_skyrat.dmm b/_maps/map_files/generic/CentCom_skyrat.dmm index a56accd1368..603a062422b 100644 --- a/_maps/map_files/generic/CentCom_skyrat.dmm +++ b/_maps/map_files/generic/CentCom_skyrat.dmm @@ -2194,9 +2194,6 @@ "hb" = ( /turf/open/floor/wood, /area/centcom/central_command_areas/courtroom) -"hc" = ( -/turf/open/floor/engine, -/area/centcom/syndicate_mothership/expansion_bombthreat) "he" = ( /obj/effect/light_emitter{ set_cap = 1; @@ -26203,7 +26200,7 @@ ia XV fM zt -hc +fn fn NY tg diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index 6a1c1f159da..acf671d4de1 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -10849,10 +10849,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/entry) -"dFS" = ( -/obj/structure/table, -/turf/open/floor/carpet, -/area/station/cargo/qm) "dFY" = ( /obj/structure/sign/poster/official/here_for_your_safety{ pixel_y = -32 @@ -16697,7 +16693,9 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/computer/security/telescreen/vault{ + pixel_y = 30 + }, /turf/open/floor/iron, /area/station/cargo/qm) "fMs" = ( @@ -25543,13 +25541,13 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "iPD" = ( -/obj/machinery/modular_computer/console/preset/civilian{ - dir = 4 - }, /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 }, /obj/item/radio/intercom/directional/west, +/obj/machinery/modular_computer/console/preset/id{ + dir = 4 + }, /turf/open/floor/iron, /area/station/cargo/qm) "iPQ" = ( @@ -31028,19 +31026,6 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron, /area/station/security/checkpoint/engineering) -"kCL" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/supply/qm, -/turf/open/floor/iron, -/area/station/cargo/qm) "kCN" = ( /obj/structure/rack, /obj/effect/spawner/random/techstorage/command_all, @@ -36272,6 +36257,13 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/hallway/secondary/exit) +"mlF" = ( +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 + }, +/obj/machinery/keycard_auth/directional/east, +/turf/open/floor/iron, +/area/station/cargo/qm) "mlH" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -42714,6 +42706,10 @@ }, /turf/open/floor/iron/dark, /area/station/medical/morgue) +"out" = ( +/obj/machinery/pdapainter/supply, +/turf/open/floor/carpet, +/area/station/cargo/qm) "ouJ" = ( /obj/effect/turf_decal/siding/thinplating{ dir = 9 @@ -45720,6 +45716,7 @@ sortType = 3 }, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/qm) "puH" = ( @@ -49011,9 +49008,6 @@ dir = 4 }, /obj/effect/landmark/start/head_of_personnel, -/obj/machinery/computer/security/telescreen/vault{ - pixel_y = 30 - }, /obj/machinery/light/directional/north, /turf/open/floor/carpet, /area/station/command/heads_quarters/hop) @@ -67502,9 +67496,6 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "wQv" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 @@ -67512,6 +67503,11 @@ /obj/structure/disposalpipe/segment, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/qm) "wQP" = ( @@ -70056,9 +70052,6 @@ /turf/open/floor/iron, /area/station/commons/lounge) "xLd" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -70068,6 +70061,9 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/command/glass{ + name = "Quartermaster's Office" + }, /turf/open/floor/iron, /area/station/cargo/office) "xLi" = ( @@ -179468,12 +179464,12 @@ dJV dJV dJV nkJ -kCL +aFo fLY owZ aXZ kMW -iYb +out trs whL een @@ -179730,7 +179726,7 @@ puE tjJ aYG kRG -dFS +iYb trs whL mpA @@ -179984,7 +179980,7 @@ gKj qHM aFo sxj -aWh +mlF aWh fza aWh diff --git a/code/__DEFINES/access.dm b/code/__DEFINES/access.dm index afb738a23d2..2ae897a0b5d 100644 --- a/code/__DEFINES/access.dm +++ b/code/__DEFINES/access.dm @@ -315,8 +315,9 @@ ACCESS_CMO, \ ACCESS_HOS, \ ACCESS_HOP, \ + ACCESS_QM, \ ACCESS_RD, \ -) +) // SKYRAT EDIT - Added ACCESS_CE and ACCESS_CMO to PRIVATE_COMMAND_ACCESS /// Captains private rooms. Do not use direct, access via SSid_access.get_flag_access_list(ACCESS_FLAG_CAPTAIN) #define CAPTAIN_ACCESS list( \ @@ -497,6 +498,7 @@ /obj/item/modular_computer/tablet/pda/warden = list(REGION_SECURITY), \ /obj/item/modular_computer/tablet/pda/janitor = list(REGION_GENERAL), \ /obj/item/modular_computer/tablet/pda/science = list(REGION_RESEARCH), \ + /obj/item/modular_computer/tablet/pda/heads/quartermaster = list(REGION_COMMAND), \ /obj/item/modular_computer/tablet/pda/heads/hop = list(REGION_COMMAND), \ /obj/item/modular_computer/tablet/pda/heads/hos = list(REGION_COMMAND), \ /obj/item/modular_computer/tablet/pda/heads/cmo = list(REGION_COMMAND), \ @@ -504,7 +506,6 @@ /obj/item/modular_computer/tablet/pda/heads/rd = list(REGION_COMMAND), \ /obj/item/modular_computer/tablet/pda/heads/captain = list(REGION_COMMAND), \ /obj/item/modular_computer/tablet/pda/cargo = list(REGION_SUPPLY), \ - /obj/item/modular_computer/tablet/pda/quartermaster = list(REGION_SUPPLY), \ /obj/item/modular_computer/tablet/pda/shaftminer = list(REGION_SUPPLY), \ /obj/item/modular_computer/tablet/pda/chaplain = list(REGION_GENERAL), \ /obj/item/modular_computer/tablet/pda/lawyer = list(REGION_GENERAL, REGION_SECURITY), \ diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm index 188501749c8..497a9e4f1dc 100644 --- a/code/controllers/configuration/entries/game_options.dm +++ b/code/controllers/configuration/entries/game_options.dm @@ -103,6 +103,8 @@ /datum/config_entry/flag/enforce_human_authority //If non-human species are barred from joining as a head of staff +/datum/config_entry/flag/enforce_human_authority_on_everyone //If non-human species are barred from joining as a head of staff, including jobs flagged as allowed for non-humans, ie. Quartermaster. + /datum/config_entry/flag/allow_latejoin_antagonists // If late-joining players can be traitor/changeling /datum/config_entry/number/shuttle_refuel_delay diff --git a/code/controllers/subsystem/id_access.dm b/code/controllers/subsystem/id_access.dm index ad62e3c5f17..82801e7265b 100644 --- a/code/controllers/subsystem/id_access.dm +++ b/code/controllers/subsystem/id_access.dm @@ -188,6 +188,12 @@ SUBSYSTEM_DEF(id_access) "templates" = list(), "pdas" = list(), ), + "[ACCESS_QM]" = list( + "regions" = list(REGION_SUPPLY), + "head" = JOB_QUARTERMASTER, + "templates" = list(), + "pdas" = list(), + ), ) var/list/station_job_trims = subtypesof(/datum/id_trim/job) for(var/trim_path in station_job_trims) diff --git a/code/datums/id_trim/jobs.dm b/code/datums/id_trim/jobs.dm index 4f54d6de61e..21c4916c3c2 100644 --- a/code/datums/id_trim/jobs.dm +++ b/code/datums/id_trim/jobs.dm @@ -206,12 +206,11 @@ extra_access = list( ACCESS_MINING, ACCESS_MINING_STATION, - ACCESS_QM, ) template_access = list( ACCESS_CAPTAIN, ACCESS_CHANGE_IDS, - ACCESS_HOP, + ACCESS_QM, ) job = /datum/job/cargo_technician @@ -459,7 +458,6 @@ ACCESS_AUX_BASE, ACCESS_BAR, ACCESS_BRIG_ENTRANCE, - ACCESS_CARGO, ACCESS_CHAPEL_OFFICE, ACCESS_CHANGE_IDS, ACCESS_CREMATORIUM, @@ -475,20 +473,14 @@ ACCESS_LAWYER, ACCESS_LIBRARY, ACCESS_MAINT_TUNNELS, - ACCESS_MECH_MINING, ACCESS_MEDICAL, ACCESS_MINERAL_STOREROOM, - ACCESS_MINING, - ACCESS_MINING_STATION, ACCESS_PSYCHOLOGY, - ACCESS_QM, ACCESS_RC_ANNOUNCE, ACCESS_SCIENCE, ACCESS_SERVICE, - ACCESS_SHIPPING, ACCESS_TELEPORTER, ACCESS_THEATRE, - ACCESS_VAULT, ACCESS_WEAPONS, ) minimal_wildcard_access = list( @@ -499,7 +491,7 @@ template_access = list( ACCESS_CAPTAIN, ACCESS_CHANGE_IDS, - ) + ) job = /datum/job/head_of_personnel /datum/id_trim/job/head_of_security @@ -733,13 +725,19 @@ ACCESS_RC_ANNOUNCE, ACCESS_SHIPPING, ACCESS_VAULT, + ACCESS_KEYCARD_AUTH, + ACCESS_COMMAND, + ACCESS_EVA, + ACCESS_BRIG_ENTRANCE, ) extra_access = list() + minimal_wildcard_access = list( + ACCESS_QM, + ) template_access = list( ACCESS_CAPTAIN, ACCESS_CHANGE_IDS, - ACCESS_HOP, - ) + ) job = /datum/job/quartermaster /datum/id_trim/job/research_director @@ -940,12 +938,11 @@ ) extra_access = list( ACCESS_MAINT_TUNNELS, - ACCESS_QM, ) template_access = list( ACCESS_CAPTAIN, ACCESS_CHANGE_IDS, - ACCESS_HOP, + ACCESS_QM, ) job = /datum/job/shaft_miner diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_latejoin.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_latejoin.dm index 6030b0c96de..a317221d597 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_latejoin.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_latejoin.dm @@ -98,6 +98,7 @@ JOB_HEAD_OF_PERSONNEL, JOB_HEAD_OF_SECURITY, JOB_PRISONER, + JOB_QUARTERMASTER, JOB_RESEARCH_DIRECTOR, JOB_SECURITY_OFFICER, JOB_WARDEN, diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_roundstart.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_roundstart.dm index d632a1b56bc..225b1ca377e 100644 --- a/code/game/gamemodes/dynamic/dynamic_rulesets_roundstart.dm +++ b/code/game/gamemodes/dynamic/dynamic_rulesets_roundstart.dm @@ -477,6 +477,7 @@ JOB_HEAD_OF_PERSONNEL, JOB_HEAD_OF_SECURITY, JOB_PRISONER, + JOB_QUARTERMASTER, JOB_RESEARCH_DIRECTOR, JOB_SECURITY_OFFICER, JOB_WARDEN, diff --git a/code/game/machinery/PDApainter.dm b/code/game/machinery/PDApainter.dm index cca8d6cf79f..cf172a26965 100644 --- a/code/game/machinery/PDApainter.dm +++ b/code/game/machinery/PDApainter.dm @@ -377,3 +377,8 @@ /obj/machinery/pdapainter/engineering name = "\improper Engineering PDA & ID Painter" target_dept = REGION_ENGINEERING + +/// Supply departmental variant. Limited to PDAs defined in the SSid_access.sub_department_managers_tgui data structure. +/obj/machinery/pdapainter/supply + name = "\improper Supply PDA & ID Painter" + target_dept = REGION_SUPPLY diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index fcea93b685f..8772253f119 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -132,12 +132,12 @@ GLOBAL_DATUM_INIT(crewmonitor, /datum/crewmonitor, new) JOB_ATMOSPHERIC_TECHNICIAN = 42, JOB_ENGINEERING_GUARD = 43, // SKYRAT EDIT ADDITION // 50-59: Cargo - JOB_QUARTERMASTER = 50, // SKYRAT EDIT - ORIGINAL: JOB_QUARTERMASTER = 51, - JOB_SHAFT_MINER = 52, - JOB_CARGO_TECHNICIAN = 53, - JOB_CUSTOMS_AGENT = 54, // SKYRAT EDIT ADDITION + JOB_QUARTERMASTER = 50, + JOB_SHAFT_MINER = 51, + JOB_CARGO_TECHNICIAN = 52, + JOB_CUSTOMS_AGENT = 53, // SKYRAT EDIT ADDITION // 60+: Civilian/other - JOB_HEAD_OF_PERSONNEL = 60, // SKYRAT EDIT - ORIGINAL: JOB_HEAD_OF_PERSONNEL = 50, + JOB_HEAD_OF_PERSONNEL = 60, JOB_BARTENDER = 61, JOB_COOK = 62, JOB_BOTANIST = 63, diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 204214d54d7..ff8a4f954a7 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -110,8 +110,12 @@ /obj/item/encryptionkey/heads/hop name = "\proper the head of personnel's encryption key" icon_state = "hop_cypherkey" - //channels = list(RADIO_CHANNEL_SUPPLY = 1, RADIO_CHANNEL_SERVICE = 1, RADIO_CHANNEL_COMMAND = 1) //ORIGINAL - channels = list(RADIO_CHANNEL_SERVICE = 1, RADIO_CHANNEL_COMMAND = 1) //SKYRAT EDIT CHANGE + channels = list(RADIO_CHANNEL_SERVICE = 1, RADIO_CHANNEL_COMMAND = 1) + +/obj/item/encryptionkey/heads/qm + name = "\proper the quartermaster's encryption key" + icon_state = "cargo_cypherkey" + channels = list(RADIO_CHANNEL_SUPPLY = 1, RADIO_CHANNEL_COMMAND = 1) /obj/item/encryptionkey/headset_cargo name = "supply radio encryption key" diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index c7febabc92b..270aeccfed0 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -238,9 +238,15 @@ GLOBAL_LIST_INIT(channel_tokens, list( icon_state = "com_headset" keyslot = new /obj/item/encryptionkey/heads/hop +/obj/item/radio/headset/heads/qm + name = "\proper the quartermaster's headset" + desc = "The headset of the guy who runs the cargo department." + icon_state = "com_headset" + keyslot = new /obj/item/encryptionkey/heads/qm + /obj/item/radio/headset/headset_cargo name = "supply radio headset" - desc = "A headset used by the QM and his slaves." + desc = "A headset used by the QM's slaves." icon_state = "cargo_headset" keyslot = new /obj/item/encryptionkey/headset_cargo diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm b/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm index 295ea98e641..df97dc33674 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/cargo.dm @@ -16,7 +16,7 @@ new /obj/item/clothing/mask/gas(src) // Why does the QM spawn with a generic gas mask new /obj/item/clothing/head/soft(src) // Why does the QM spawn with a generic soft cap */ - new /obj/item/radio/headset/headset_cargo(src) + new /obj/item/radio/headset/heads/qm(src) new /obj/item/clothing/suit/fire/firefighter(src) new /obj/item/megaphone/cargo(src) new /obj/item/tank/internals/emergency_oxygen(src) diff --git a/code/modules/antagonists/traitor/objectives/bug_room.dm b/code/modules/antagonists/traitor/objectives/bug_room.dm index f92d8b403c2..0093f20889e 100644 --- a/code/modules/antagonists/traitor/objectives/bug_room.dm +++ b/code/modules/antagonists/traitor/objectives/bug_room.dm @@ -25,6 +25,7 @@ JOB_CHIEF_ENGINEER = /area/station/command/heads_quarters/ce, JOB_HEAD_OF_PERSONNEL = /area/station/command/heads_quarters/hop, JOB_CAPTAIN = /area/station/command/heads_quarters/captain, // For head roles so that they can still get this objective. + JOB_QUARTERMASTER = /area/station/cargo/qm, ) var/datum/job/target_office var/requires_head_as_supervisor = TRUE diff --git a/code/modules/antagonists/traitor/objectives/destroy_heirloom.dm b/code/modules/antagonists/traitor/objectives/destroy_heirloom.dm index 1e3c2586da1..71289cbfe9c 100644 --- a/code/modules/antagonists/traitor/objectives/destroy_heirloom.dm +++ b/code/modules/antagonists/traitor/objectives/destroy_heirloom.dm @@ -66,7 +66,6 @@ progression_maximum = 45 MINUTES target_jobs = list( // Cargo - /datum/job/quartermaster, /datum/job/shaft_miner, // Service /datum/job/chaplain, @@ -88,6 +87,7 @@ /datum/job/head_of_personnel, /datum/job/chief_medical_officer, /datum/job/research_director, + /datum/job/quartermaster, ) /datum/traitor_objective/destroy_heirloom/captain diff --git a/code/modules/antagonists/traitor/objectives/destroy_machinery.dm b/code/modules/antagonists/traitor/objectives/destroy_machinery.dm index 514c37b0aed..7daae4a859f 100644 --- a/code/modules/antagonists/traitor/objectives/destroy_machinery.dm +++ b/code/modules/antagonists/traitor/objectives/destroy_machinery.dm @@ -23,6 +23,7 @@ JOB_CHIEF_ENGINEER = /obj/machinery/rnd/production/protolathe/department/engineering, JOB_HEAD_OF_PERSONNEL = /obj/machinery/rnd/production/techfab/department/service, JOB_SHAFT_MINER = /obj/machinery/mineral/ore_redemption, + JOB_QUARTERMASTER = /obj/machinery/rnd/production/techfab/department/cargo, ) /// Whether this can bypass the maximum_allowed value or not var/allow_more_than_max = FALSE diff --git a/code/modules/antagonists/traitor/objectives/kidnapping.dm b/code/modules/antagonists/traitor/objectives/kidnapping.dm index b740a72d316..4eec6ff1a56 100644 --- a/code/modules/antagonists/traitor/objectives/kidnapping.dm +++ b/code/modules/antagonists/traitor/objectives/kidnapping.dm @@ -73,7 +73,6 @@ // Medical /datum/job/virologist, // Cargo - /datum/job/quartermaster, /datum/job/shaft_miner, // Service /datum/job/cook, @@ -97,6 +96,7 @@ /datum/job/head_of_personnel, /datum/job/chief_medical_officer, /datum/job/research_director, + /datum/job/quartermaster, ) progression_reward = list(8 MINUTES, 12 MINUTES) diff --git a/code/modules/antagonists/traitor/objectives/kill_pet.dm b/code/modules/antagonists/traitor/objectives/kill_pet.dm index 9ad19c01630..ff1e18ac2ce 100644 --- a/code/modules/antagonists/traitor/objectives/kill_pet.dm +++ b/code/modules/antagonists/traitor/objectives/kill_pet.dm @@ -24,6 +24,11 @@ JOB_CAPTAIN = /mob/living/simple_animal/pet/fox/renault, JOB_CHIEF_MEDICAL_OFFICER = /mob/living/simple_animal/pet/cat/runtime, JOB_CHIEF_ENGINEER = /mob/living/simple_animal/parrot/poly, + JOB_QUARTERMASTER = list( + /mob/living/simple_animal/sloth/citrus, + /mob/living/simple_animal/sloth/paperwork, + /mob/living/simple_animal/hostile/gorilla/cargo_domestic, + ) ) /// The head that we are targetting var/datum/job/target diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index 77090a7f107..a924b387416 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -125,6 +125,9 @@ ///RPG job names, for the memes var/rpg_title + /// Does this job ignore human authority? + var/ignore_human_authority = FALSE + /datum/job/New() . = ..() @@ -450,6 +453,10 @@ return // Disconnected while checking for the appearance ban. var/require_human = CONFIG_GET(flag/enforce_human_authority) && (job.departments_bitflags & DEPARTMENT_BITFLAG_COMMAND) + if(require_human) + var/all_authority_require_human = CONFIG_GET(flag/enforce_human_authority_on_everyone) + if(!all_authority_require_human && job.ignore_human_authority) + require_human = FALSE src.job = job.title diff --git a/code/modules/jobs/job_types/cargo_technician.dm b/code/modules/jobs/job_types/cargo_technician.dm index 2064af32f37..a3c7a1651df 100644 --- a/code/modules/jobs/job_types/cargo_technician.dm +++ b/code/modules/jobs/job_types/cargo_technician.dm @@ -3,11 +3,11 @@ description = "Distribute supplies to the departments that ordered them, \ collect empty crates, load and unload the supply shuttle, \ ship bounty cubes." - department_head = list(JOB_HEAD_OF_PERSONNEL) + department_head = list(JOB_QUARTERMASTER) faction = FACTION_STATION total_positions = 3 spawn_positions = 2 - supervisors = "the quartermaster and the head of personnel" + supervisors = "the quartermaster" selection_color = "#dcba97" exp_granted_type = EXP_TYPE_CREW diff --git a/code/modules/jobs/job_types/head_of_personnel.dm b/code/modules/jobs/job_types/head_of_personnel.dm index 14ecc7d08d4..dfad2fd09f9 100644 --- a/code/modules/jobs/job_types/head_of_personnel.dm +++ b/code/modules/jobs/job_types/head_of_personnel.dm @@ -4,8 +4,7 @@ protect Ian, run the station when the captain dies." //SKYRAT EDIT: HOP ISN'T HEAD OF SUPPLY auto_deadmin_role_flags = DEADMIN_POSITION_HEAD department_head = list(JOB_CAPTAIN) - //head_announce = list(RADIO_CHANNEL_SUPPLY, RADIO_CHANNEL_SERVICE) //ORIGINAL - head_announce = list(RADIO_CHANNEL_SERVICE) //SKYRAT EDIT CHANGE + head_announce = list(RADIO_CHANNEL_SERVICE) faction = FACTION_STATION total_positions = 1 spawn_positions = 1 @@ -22,7 +21,6 @@ plasmaman_outfit = /datum/outfit/plasmaman/head_of_personnel departments_list = list( /datum/job_department/service, - ///datum/job_department/cargo, //SKYRAT EDIT /datum/job_department/command, ) diff --git a/code/modules/jobs/job_types/quartermaster.dm b/code/modules/jobs/job_types/quartermaster.dm index 018c49ee38b..c9b0394ef3e 100644 --- a/code/modules/jobs/job_types/quartermaster.dm +++ b/code/modules/jobs/job_types/quartermaster.dm @@ -2,11 +2,12 @@ title = JOB_QUARTERMASTER description = "Coordinate cargo technicians and shaft miners, assist with \ economical purchasing." - department_head = list(JOB_HEAD_OF_PERSONNEL) + auto_deadmin_role_flags = DEADMIN_POSITION_HEAD + department_head = list(JOB_CAPTAIN) faction = FACTION_STATION total_positions = 1 spawn_positions = 1 - supervisors = "the head of personnel" + minimal_player_age = 7 supervisors = "the captain" selection_color = "#d7b088" exp_required_type_department = EXP_TYPE_SUPPLY @@ -15,14 +16,16 @@ outfit = /datum/outfit/job/quartermaster plasmaman_outfit = /datum/outfit/plasmaman/cargo + paycheck = PAYCHECK_COMMAND paycheck_department = ACCOUNT_CAR - liver_traits = list(TRAIT_PRETENDER_ROYAL_METABOLISM) + liver_traits = list(TRAIT_ROYAL_METABOLISM) // finally upgraded display_order = JOB_DISPLAY_ORDER_QUARTERMASTER bounty_types = CIV_JOB_RANDOM departments_list = list( /datum/job_department/cargo, + /datum/job_department/command, ) family_heirlooms = list(/obj/item/stamp, /obj/item/stamp/denied) mail_goodies = list( @@ -30,7 +33,7 @@ ) rpg_title = "Steward" job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS | JOB_CAN_BE_INTERN - + ignore_human_authority = TRUE /datum/job/quartermaster/after_spawn(mob/living/carbon/human/H, mob/M) //SKYRAT EDIT - Gubman 3.1 . = ..() @@ -39,15 +42,14 @@ /datum/outfit/job/quartermaster name = "Quartermaster" jobtype = /datum/job/quartermaster - - id = /obj/item/card/id/advanced - id_trim = /datum/id_trim/job/quartermaster - uniform = /obj/item/clothing/under/rank/cargo/qm backpack_contents = list( - /obj/item/modular_computer/tablet/preset/cargo/quartermaster = 1, - ) - belt = /obj/item/modular_computer/tablet/pda/quartermaster - ears = /obj/item/radio/headset/headset_cargo + /obj/item/melee/baton/telescopic = 1, + ) + id_trim = /datum/id_trim/job/quartermaster + id = /obj/item/card/id/advanced/silver + uniform = /obj/item/clothing/under/rank/cargo/qm + belt = /obj/item/modular_computer/tablet/pda/heads/quartermaster + ears = /obj/item/radio/headset/heads/qm glasses = /obj/item/clothing/glasses/sunglasses shoes = /obj/item/clothing/shoes/sneakers/brown l_hand = /obj/item/clipboard diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm index 0f4b385c7b3..e8b05ad6295 100644 --- a/code/modules/jobs/job_types/shaft_miner.dm +++ b/code/modules/jobs/job_types/shaft_miner.dm @@ -2,11 +2,11 @@ title = JOB_SHAFT_MINER description = "Travel to strange lands. Mine ores. \ Meet strange creatures. Kill them for their gold." - department_head = list(JOB_HEAD_OF_PERSONNEL) + department_head = list(JOB_QUARTERMASTER) faction = FACTION_STATION total_positions = 3 spawn_positions = 3 - supervisors = "the quartermaster and the head of personnel" + supervisors = "the quartermaster" selection_color = "#dcba97" exp_granted_type = EXP_TYPE_CREW diff --git a/code/modules/jobs/job_types/warden.dm b/code/modules/jobs/job_types/warden.dm index ce6121f621c..5bf6709fa76 100644 --- a/code/modules/jobs/job_types/warden.dm +++ b/code/modules/jobs/job_types/warden.dm @@ -22,7 +22,7 @@ paycheck_department = ACCOUNT_SEC mind_traits = list(TRAIT_DONUT_LOVER) - liver_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM) + liver_traits = list(TRAIT_LAW_ENFORCEMENT_METABOLISM, TRAIT_PRETENDER_ROYAL_METABOLISM) display_order = JOB_DISPLAY_ORDER_WARDEN bounty_types = CIV_JOB_SEC diff --git a/code/modules/modular_computers/computers/item/role_tablet_presets.dm b/code/modules/modular_computers/computers/item/role_tablet_presets.dm index 961d16ed01f..90248a1df96 100644 --- a/code/modules/modular_computers/computers/item/role_tablet_presets.dm +++ b/code/modules/modular_computers/computers/item/role_tablet_presets.dm @@ -103,6 +103,29 @@ /datum/computer_file/program/signal_commander, ) +/obj/item/modular_computer/tablet/pda/heads/quartermaster/Initialize(mapload) + . = ..() + install_component(new /obj/item/computer_hardware/printer/mini) + +/obj/item/modular_computer/tablet/pda/heads/quartermaster + name = "quartermaster PDA" + greyscale_config = /datum/greyscale_config/tablet/stripe_thick + greyscale_colors = "#D6B328#6506CA#927444" + insert_type = /obj/item/pen/survival + default_applications = list( + /datum/computer_file/program/crew_manifest, + /datum/computer_file/program/status, + /datum/computer_file/program/science, + /datum/computer_file/program/robocontrol, + /datum/computer_file/program/budgetorders, + /datum/computer_file/program/shipping, + /datum/computer_file/program/robocontrol, + ) + +/obj/item/modular_computer/tablet/pda/heads/quartermaster/Initialize(mapload) + . = ..() + install_component(new /obj/item/computer_hardware/printer/mini) + /** * Security */ @@ -232,25 +255,6 @@ /datum/computer_file/program/robocontrol, ) -/obj/item/modular_computer/tablet/pda/quartermaster/Initialize(mapload) - . = ..() - install_component(new /obj/item/computer_hardware/printer/mini) - -/obj/item/modular_computer/tablet/pda/quartermaster - name = "quartermaster PDA" - greyscale_config = /datum/greyscale_config/tablet/stripe_thick - greyscale_colors = "#D6B328#6506CA#927444" - insert_type = /obj/item/pen/survival - default_applications = list( - /datum/computer_file/program/shipping, - /datum/computer_file/program/budgetorders, - /datum/computer_file/program/robocontrol, - ) - -/obj/item/modular_computer/tablet/pda/quartermaster/Initialize(mapload) - . = ..() - install_component(new /obj/item/computer_hardware/printer/mini) - /obj/item/modular_computer/tablet/pda/shaftminer name = "shaft miner PDA" greyscale_config = /datum/greyscale_config/tablet/stripe_thick diff --git a/code/modules/modular_computers/file_system/programs/budgetordering.dm b/code/modules/modular_computers/file_system/programs/budgetordering.dm index ae5cdf02494..f60267a6186 100644 --- a/code/modules/modular_computers/file_system/programs/budgetordering.dm +++ b/code/modules/modular_computers/file_system/programs/budgetordering.dm @@ -73,7 +73,7 @@ var/obj/item/computer_hardware/card_slot/card_slot = computer.all_components[MC_CARD] var/obj/item/card/id/id_card = card_slot?.GetID() if(id_card?.registered_account) - if((ACCESS_COMMAND in id_card.access) || (ACCESS_QM in id_card.access)) + if((ACCESS_COMMAND in id_card.access)) requestonly = FALSE buyer = SSeconomy.get_dep_account(id_card.registered_account.account_job.paycheck_department) can_approve_requests = TRUE diff --git a/config/game_options.txt b/config/game_options.txt index 6c80f29514d..a9910ce8158 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -119,6 +119,9 @@ PROTECT_ROLES_FROM_ANTAGONIST ## If non-human species are barred from joining as a head of staff #ENFORCE_HUMAN_AUTHORITY +## If non-human species are barred from joining as a head of staff, including jobs flagged as allowed for non-humans, ie. Quartermaster. +#ENFORCE_HUMAN_AUTHORITY_ON_EVERYONE + ## If late-joining players have a chance to become a traitor/changeling ALLOW_LATEJOIN_ANTAGONISTS diff --git a/icons/mob/huds/hud.dmi b/icons/mob/huds/hud.dmi index c945e96055f..807d4bf649c 100644 Binary files a/icons/mob/huds/hud.dmi and b/icons/mob/huds/hud.dmi differ diff --git a/icons/obj/card.dmi b/icons/obj/card.dmi index 5953cfb58de..3a55571566b 100644 Binary files a/icons/obj/card.dmi and b/icons/obj/card.dmi differ diff --git a/strings/sillytips.txt b/strings/sillytips.txt index de52969f235..aeb7b9b27ae 100644 --- a/strings/sillytips.txt +++ b/strings/sillytips.txt @@ -14,7 +14,7 @@ The wizard is supposed to be extremely strong in one on one combat, stop getting Sometimes a round will just be a bust. C'est la vie. This is a game that is constantly being developed for. Expect things to be added, removed, fixed, and broken on a daily basis. It's fun to try and predict the round type from the tip of the round message. -The quartermaster is not a head of staff and will never be one. +The quartermaster is only a head of staff so their feelings aren’t hurt. Don’t tell them. The bird remembers. Your sprite represents your hitbox, so that afro makes you easier to kill. The sacrifices we make for style. Sometimes admins will just do stuff. Roll with it.