diff --git a/.github/workflows/autowiki.yml b/.github/workflows/autowiki.yml index b36db1444bbe..15474e651f17 100644 --- a/.github/workflows/autowiki.yml +++ b/.github/workflows/autowiki.yml @@ -33,7 +33,7 @@ jobs: run: | sudo dpkg --add-architecture i386 sudo apt update || true - sudo apt install -o APT::Immediate-Configure=false libssl1.1:i386 + sudo apt install -o APT::Immediate-Configure=false libssl-dev:i386 bash tools/ci/install_rust_g.sh - name: Install auxmos if: steps.secrets_set.outputs.SECRETS_ENABLED diff --git a/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm b/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm index 634a61810c3a..4e44e6fb41e0 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_surface_engioutpost.dmm @@ -6,7 +6,7 @@ /turf/open/floor/plating/snowed/smoothed/icemoon, /area/ruin) "ac" = ( -/obj/effect/mob_spawn/human/engineer/rig, +/obj/effect/mob_spawn/human/engineer, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/overmap_encounter/planetoid/ice/explored) "ad" = ( @@ -1199,7 +1199,7 @@ /turf/open/floor/plating/ice/icemoon, /area/overmap_encounter/planetoid/ice/explored) "cU" = ( -/obj/effect/mob_spawn/human/engineer/rig, +/obj/effect/mob_spawn/human/engineer, /obj/structure/cable{ icon_state = "4-8" }, diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_drakelair.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_drakelair.dmm index 4c8ccc99dfcb..f089a09b8fba 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_drakelair.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_drakelair.dmm @@ -127,7 +127,8 @@ "iT" = ( /obj/structure/stone_tile/slab, /mob/living/simple_animal/hostile/megafauna/dragon/icemoon{ - loot = list(/obj/structure/closet/crate/necropolis/dragon,/obj/item/keycard/gatedrop/drakelair) + loot = list(/obj/structure/closet/crate/necropolis/dragon,/obj/item/keycard/gatedrop/drakelair); + crusher_loot = list(/obj/structure/closet/crate/necropolis/dragon/crusher,/obj/item/keycard/gatedrop/drakelair) }, /turf/open/indestructible/boss, /area/ruin) diff --git a/_maps/RandomRuins/JungleRuins/jungle_abandoned_library.dmm b/_maps/RandomRuins/JungleRuins/jungle_abandoned_library.dmm index 55783c5a5359..71b31e40d1fd 100644 --- a/_maps/RandomRuins/JungleRuins/jungle_abandoned_library.dmm +++ b/_maps/RandomRuins/JungleRuins/jungle_abandoned_library.dmm @@ -1564,7 +1564,7 @@ /obj/effect/mob_spawn/human/corpse/assistant{ oxy_damage = 200; name = "Dungeon Master"; - outfit = /datum/outfit/job/curator/dungeonmaster; + outfit = /datum/outfit/job/curator; backpack_contents = null }, /obj/effect/decal/cleanable/blood, diff --git a/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm b/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm index f008f3c68717..cc5902f26a82 100644 --- a/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm +++ b/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm @@ -6481,7 +6481,7 @@ /turf/open/water/jungle, /area/overmap_encounter/planetoid/cave/explored) "Pe" = ( -/obj/effect/mob_spawn/human/miner/old, +/obj/effect/mob_spawn/human/miner, /obj/effect/decal/cleanable/vomit/old{ pixel_x = 13; pixel_y = 6 diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm index bfd1d0e63d41..5e8e6a7f0dec 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_survivalpod.dmm @@ -78,7 +78,7 @@ /turf/open/floor/pod/dark, /area/ruin/powered) "q" = ( -/obj/effect/mob_spawn/human/miner/explorer{ +/obj/effect/mob_spawn/human/miner{ brute_damage = 150; oxy_damage = 50 }, diff --git a/_maps/RandomRuins/RockRuins/rockplanet_miningexpedition.dmm b/_maps/RandomRuins/RockRuins/rockplanet_miningexpedition.dmm index 472ccd44cc38..14d80fb7ce12 100644 --- a/_maps/RandomRuins/RockRuins/rockplanet_miningexpedition.dmm +++ b/_maps/RandomRuins/RockRuins/rockplanet_miningexpedition.dmm @@ -264,7 +264,7 @@ /area/ruin/rockplanet/syndicate) "Qo" = ( /obj/effect/decal/cleanable/blood, -/obj/effect/mob_spawn/human/miner/explorer, +/obj/effect/mob_spawn/human/miner, /obj/item/pickaxe, /turf/open/floor/plating/asteroid/rockplanet/lit, /area/overmap_encounter/planetoid/rockplanet/explored) diff --git a/_maps/RandomRuins/SpaceRuins/corporate_mining.dmm b/_maps/RandomRuins/SpaceRuins/corporate_mining.dmm index 10f841b29619..6ed5ed67825f 100644 --- a/_maps/RandomRuins/SpaceRuins/corporate_mining.dmm +++ b/_maps/RandomRuins/SpaceRuins/corporate_mining.dmm @@ -579,12 +579,12 @@ dir = 1 }, /obj/effect/decal/cleanable/blood/gibs/bubblegum, -/obj/effect/mob_spawn/human/miner/rig, +/obj/effect/mob_spawn/human/miner, /turf/open/floor/plating/asteroid/airless, /area/ruin/space) "ns" = ( /obj/item/pickaxe/drill, -/obj/effect/mob_spawn/human/miner/rig, +/obj/effect/mob_spawn/human/miner, /turf/open/floor/plating/asteroid/airless, /area/ruin/space) "nu" = ( @@ -635,13 +635,13 @@ /turf/closed/wall/rust, /area/ruin/space/has_grav/corporatemine/crewquarters) "ol" = ( -/obj/effect/mob_spawn/human/miner/rig, +/obj/effect/mob_spawn/human/miner, /obj/item/shovel, /turf/open/floor/plating/asteroid/airless, /area/ruin/space) "ov" = ( /obj/structure/table/wood/poker, -/obj/effect/holodeck_effect/cards, +/obj/item/toy/cards/deck, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 10 }, @@ -758,7 +758,7 @@ /area/ruin/space/has_grav/corporatemine/bridge) "rh" = ( /obj/effect/decal/cleanable/blood/old, -/obj/effect/mob_spawn/human/miner/rig, +/obj/effect/mob_spawn/human/miner, /turf/open/floor/plating/asteroid/airless, /area/ruin/space) "rk" = ( @@ -1177,7 +1177,7 @@ /turf/open/floor/plasteel/grimy, /area/ruin/space/has_grav/corporatemine/crewquarters) "Bp" = ( -/obj/effect/mob_spawn/human/miner/rig, +/obj/effect/mob_spawn/human/miner, /obj/effect/decal/cleanable/blood, /obj/item/gun/energy/kinetic_accelerator, /turf/open/floor/plating/asteroid/airless, diff --git a/_maps/RandomRuins/SpaceRuins/ntfacility.dmm b/_maps/RandomRuins/SpaceRuins/ntfacility.dmm index 738a536a7db2..d17fe7601d26 100644 --- a/_maps/RandomRuins/SpaceRuins/ntfacility.dmm +++ b/_maps/RandomRuins/SpaceRuins/ntfacility.dmm @@ -755,7 +755,7 @@ /area/ruin/powered) "rY" = ( /obj/effect/mob_spawn/human/corpse/assistant{ - outfit = /datum/outfit/job/doctor/surgeon + outfit = /datum/outfit/job/doctor }, /obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/dirt/dust, diff --git a/_maps/RandomRuins/SpaceRuins/power_puzzle.dmm b/_maps/RandomRuins/SpaceRuins/power_puzzle.dmm index 18d617fda53c..291fd054aa63 100644 --- a/_maps/RandomRuins/SpaceRuins/power_puzzle.dmm +++ b/_maps/RandomRuins/SpaceRuins/power_puzzle.dmm @@ -1656,7 +1656,7 @@ }, /obj/effect/turf_decal/corner/transparent/grey/diagonal, /obj/effect/mob_spawn/human/corpse/cargo_tech{ - outfit = /datum/outfit/job/engineer/nt + outfit = /datum/outfit/job/nanotrasen/engineer }, /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/powerpuzzle/engineering) @@ -2493,7 +2493,7 @@ dir = 9 }, /obj/effect/mob_spawn/human/corpse/cargo_tech{ - outfit = /datum/outfit/job/engineer/nt + outfit = /datum/outfit/job/nanotrasen/engineer }, /obj/item/wirecutters{ pixel_y = 15 diff --git a/_maps/RandomRuins/SpaceRuins/scav_mining.dmm b/_maps/RandomRuins/SpaceRuins/scav_mining.dmm index 53d92db8e063..48476edb1b82 100644 --- a/_maps/RandomRuins/SpaceRuins/scav_mining.dmm +++ b/_maps/RandomRuins/SpaceRuins/scav_mining.dmm @@ -243,7 +243,7 @@ /turf/open/floor/plating/asteroid/airless, /area/ruin/space/has_grav) "rl" = ( -/obj/effect/mob_spawn/human/miner/explorer, +/obj/effect/mob_spawn/human/miner, /turf/open/floor/plating/asteroid/airless, /area/ruin/space/has_grav) "rH" = ( @@ -550,12 +550,12 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/scav_mining/core) "LT" = ( -/obj/effect/mob_spawn/human/miner/explorer, +/obj/effect/mob_spawn/human/miner, /turf/open/floor/plating, /area/ruin/space/has_grav/scav_mining/dorm) "MZ" = ( /obj/effect/decal/cleanable/blood, -/obj/effect/mob_spawn/human/miner/explorer, +/obj/effect/mob_spawn/human/miner, /turf/open/floor/plating/asteroid/airless, /area/ruin/space/has_grav) "No" = ( diff --git a/_maps/configs/independent_beluga.json b/_maps/configs/independent_beluga.json index 520b70dddc6b..64230b0dc797 100644 --- a/_maps/configs/independent_beluga.json +++ b/_maps/configs/independent_beluga.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", "map_name": "Beluga-class Transport", - "prefix": "ISV", + "prefix": "SV", "namelists": ["CRUISE", "NATURAL"], "map_short_name": "Beluga-class", "map_path": "_maps/shuttles/independent/independent_beluga.dmm", @@ -16,37 +16,37 @@ "roundstart": true, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "officer": true, "slots": 1 }, "First Officer": { - "outfit": "/datum/outfit/job/head_of_personnel/beluga", + "outfit": "/datum/outfit/job/independent/hop", "officer": true, "slots": 1 }, "Mechanic": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Private Security Officer": { - "outfit": "/datum/outfit/job/security/inteq/beluga", + "outfit": "/datum/outfit/job/inteq/security/beluga", "slots": 2 }, "High-Class Passenger": { - "outfit": "/datum/outfit/job/lawyer/passenger", + "outfit": "/datum/outfit/job/independent/lawyer", "slots": 4 }, "Bartender": { - "outfit": "/datum/outfit/job/bartender", + "outfit": "/datum/outfit/job/independent/bartender", "slots": 1 }, "Janitor": { - "outfit": "/datum/outfit/job/janitor", + "outfit": "/datum/outfit/job/independent/janitor", "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 2 } }, diff --git a/_maps/configs/independent_box.json b/_maps/configs/independent_box.json index 32bb02219819..14133f03f5bb 100644 --- a/_maps/configs/independent_box.json +++ b/_maps/configs/independent_box.json @@ -12,22 +12,22 @@ "SPACE", "NATURAL" ], - "prefix": "ISV", + "prefix": "IMV", "job_slots": { "Chief Medical Officer": { - "outfit": "/datum/outfit/job/cmo", + "outfit": "/datum/outfit/job/independent/cmo", "slots": 1 }, "Medical Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 3 }, "Paramedic": { - "outfit": "/datum/outfit/job/paramedic", + "outfit": "/datum/outfit/job/independent/paramedic", "slots": 2 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 3 } }, diff --git a/_maps/configs/independent_boyardee.json b/_maps/configs/independent_boyardee.json index eacf31372fdd..f099b23952e9 100644 --- a/_maps/configs/independent_boyardee.json +++ b/_maps/configs/independent_boyardee.json @@ -18,23 +18,23 @@ "map_path": "_maps/shuttles/independent/independent_boyardee.dmm", "job_slots": { "Bartender": { - "outfit": "/datum/outfit/job/bartender", + "outfit": "/datum/outfit/job/independent/bartender", "slots": 1 }, "Cook": { - "outfit": "/datum/outfit/job/cook", + "outfit": "/datum/outfit/job/independent/cook", "slots": 3 }, "Botanist": { - "outfit": "/datum/outfit/job/botanist", + "outfit": "/datum/outfit/job/independent/botanist", "slots": 2 }, "Janitor": { - "outfit": "/datum/outfit/job/janitor", + "outfit": "/datum/outfit/job/independent/janitor", "slots": 1 }, "Waiter": { - "outfit": "/datum/outfit/job/assistant/waiter", + "outfit": "/datum/outfit/job/independent/assistant/waiter", "slots": 2 } }, diff --git a/_maps/configs/independent_bubble.json b/_maps/configs/independent_bubble.json index 5284f758d47e..f63aca854e8b 100644 --- a/_maps/configs/independent_bubble.json +++ b/_maps/configs/independent_bubble.json @@ -16,23 +16,23 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "slots": 1 }, "Scientist": { - "outfit": "/datum/outfit/job/scientist", + "outfit": "/datum/outfit/job/independent/scientist", "slots": 1 }, "Station Engineer": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Shaft Miner": { - "outfit": "/datum/outfit/job/miner", + "outfit": "/datum/outfit/job/independent/miner", "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 3 } }, diff --git a/_maps/configs/independent_byo.json b/_maps/configs/independent_byo.json index 35598191c6b5..a09aaec0ee68 100644 --- a/_maps/configs/independent_byo.json +++ b/_maps/configs/independent_byo.json @@ -15,11 +15,11 @@ "prefix": "ISV", "job_slots": { "Architect": { - "outfit": "/datum/outfit/job/engineer/hazard", + "outfit": "/datum/outfit/job/independent/ce", "slots": 1 }, "Maso-Mechanic": { - "outfit": "/datum/outfit/job/engineer/hazard", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 4 } }, diff --git a/_maps/configs/independent_caravan.json b/_maps/configs/independent_caravan.json index 55398ad6fc94..ecadbea36c51 100644 --- a/_maps/configs/independent_caravan.json +++ b/_maps/configs/independent_caravan.json @@ -18,28 +18,28 @@ "roundstart": true, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/western", + "outfit": "/datum/outfit/job/independent/captain/western", "officer": true, "slots": 1 }, "Ship's Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Engine Technician": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/independent/atmos", "slots": 1 }, "Asteroid Miner": { - "outfit": "/datum/outfit/job/miner/hazard", + "outfit": "/datum/outfit/job/independent/miner", "slots": 1 }, "Fauna Researcher": { - "outfit": "/datum/outfit/job/scientist", + "outfit": "/datum/outfit/job/independent/scientist", "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 1 } }, diff --git a/_maps/configs/independent_dwayne.json b/_maps/configs/independent_dwayne.json index 34a353fe332e..1cd4a3683f0f 100644 --- a/_maps/configs/independent_dwayne.json +++ b/_maps/configs/independent_dwayne.json @@ -19,28 +19,28 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/western", + "outfit": "/datum/outfit/job/independent/captain/western", "officer": true, "slots": 1 }, "Foreman": { - "outfit": "/datum/outfit/job/quartermaster/western", + "outfit": "/datum/outfit/job/independent/quartermaster/western", "slots": 1 }, "Ship's Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Ship's Engineer": { - "outfit": "/datum/outfit/job/engineer/hazard", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Asteroid Miner": { - "outfit": "/datum/outfit/job/miner/hazard", + "outfit": "/datum/outfit/job/independent/miner/hazard", "slots": 2 }, "Deckhand": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 3 } }, diff --git a/_maps/configs/independent_halftrack.json b/_maps/configs/independent_halftrack.json index 0569a4c395a2..83b5e52d9d48 100644 --- a/_maps/configs/independent_halftrack.json +++ b/_maps/configs/independent_halftrack.json @@ -15,16 +15,16 @@ "map_path": "_maps/shuttles/independent/independent_halftrack.dmm", "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "slots": 1 }, "IRMG Vanguard": { - "outfit": "/datum/outfit/job/captain/inteq", + "outfit": "/datum/outfit/job/inteq/captain", "officer": true, "slots": 1 }, "IRMG Enforcer": { - "outfit": "/datum/outfit/job/security/inteq", + "outfit": "/datum/outfit/job/inteq/security", "slots": 2 } } diff --git a/_maps/configs/independent_junker.json b/_maps/configs/independent_junker.json index e32c13b36210..c0ecc8067ba6 100644 --- a/_maps/configs/independent_junker.json +++ b/_maps/configs/independent_junker.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", "map_name": "Junker-class Salvaged Ship", - "prefix": "ISV", + "prefix": "SV", "namelists": [ "GENERAL", "SPACE" diff --git a/_maps/configs/independent_kilo.json b/_maps/configs/independent_kilo.json index 43e2d0d62d41..b1304f2e78bb 100644 --- a/_maps/configs/independent_kilo.json +++ b/_maps/configs/independent_kilo.json @@ -16,24 +16,24 @@ "map_path": "_maps/shuttles/independent/independent_kilo.dmm", "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/western", + "outfit": "/datum/outfit/job/independent/captain/western", "officer": true, "slots": 1 }, "Ship's Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Ship's Engineer": { - "outfit": "/datum/outfit/job/engineer/hazard", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Asteroid Miner": { - "outfit": "/datum/outfit/job/miner/hazard", + "outfit": "/datum/outfit/job/independent/miner", "slots": 1 }, "Deckhand": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 1 } }, diff --git a/_maps/configs/independent_lagoon.json b/_maps/configs/independent_lagoon.json index 9d5535ca6232..7c733956ac1e 100644 --- a/_maps/configs/independent_lagoon.json +++ b/_maps/configs/independent_lagoon.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", "map_name": "Lagoon-class Cruise Ship", - "prefix": "ISV", + "prefix": "SV", "description": "An unusual sight in the relatively impoverished Frontier, the Lagoon-class is a large pleasure vessel dedicated to transporting its passengers to any number of exotic locales. Lagoons found on the Frontier tend to contain crews and passengers of a particularly daring – or foolhardy – character, willing to pay out the nose for a tour of some of the most dangerous regions in known space. Accordingly, Lagoons in these regions typically include a small but respectably equipped security contingent to protect (and, when necessary, rein in) the passengers, and come with a surprisingly powerful thermo-electric generator to move the ship’s prodigious bulk across vast expanses of space.", "tags": [ "RP Focus", @@ -16,51 +16,51 @@ "starting_funds": 3000, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "slots": 1 }, "Cruise Director": { - "outfit": "/datum/outfit/job/head_of_personnel", + "outfit": "/datum/outfit/job/independent/hop", "slots": 1 }, "Security Officer": { - "outfit": "/datum/outfit/job/security", + "outfit": "/datum/outfit/job/independent/security", "slots": 2 }, "Medical Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Ship Engineer": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/independent/atmos", "slots": 1 }, "Bartender": { - "outfit": "/datum/outfit/job/bartender", + "outfit": "/datum/outfit/job/independent/bartender", "slots": 1 }, "Cook": { - "outfit": "/datum/outfit/job/cook", + "outfit": "/datum/outfit/job/independent/cook", "slots": 1 }, "Botanist": { - "outfit": "/datum/outfit/job/botanist", + "outfit": "/datum/outfit/job/independent/botanist", "slots": 1 }, "Curator": { - "outfit": "/datum/outfit/job/curator", + "outfit": "/datum/outfit/job/independent/curator", "slots": 1 }, "Chaplain": { - "outfit": "/datum/outfit/job/chaplain", + "outfit": "/datum/outfit/job/independent/chaplain", "slots": 1 }, "Janitor": { - "outfit": "/datum/outfit/job/janitor", + "outfit": "/datum/outfit/job/independent/janitor", "slots": 1 }, "Passenger": { - "outfit": "/datum/outfit/job/assistant/corporate", + "outfit": "/datum/outfit/job/independent/assistant/fancy", "slots": 10 } }, diff --git a/_maps/configs/independent_masinyane.json b/_maps/configs/independent_masinyane.json index 4407f412bc92..b9ea7215f4dc 100644 --- a/_maps/configs/independent_masinyane.json +++ b/_maps/configs/independent_masinyane.json @@ -6,7 +6,7 @@ "tags": [ "Generalist" ], - "prefix": "ISV", + "prefix": "SV", "namelists": [ "MYTHOLOGICAL", "NATURAL" @@ -14,16 +14,16 @@ "map_path": "_maps/shuttles/independent/independent_masinyane.dmm", "job_slots": { "Private Ship Owner": { - "outfit": "/datum/outfit/job/captain/independent/owner", + "outfit": "/datum/outfit/job/independent/captain/masinyane", "officer": true, "slots": 1 }, "Ship Engineer": { - "outfit": "/datum/outfit/job/engineer/independent/ship_engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Crewmate": { - "outfit": "/datum/outfit/job/assistant/independent/crewmatefancy", + "outfit": "/datum/outfit/job/independent/assistant/fancy", "slots": 1 } } diff --git a/_maps/configs/independent_meta.json b/_maps/configs/independent_meta.json index 457c116c24ef..d31cd8006262 100644 --- a/_maps/configs/independent_meta.json +++ b/_maps/configs/independent_meta.json @@ -16,27 +16,27 @@ "map_path": "_maps/shuttles/independent/independent_meta.dmm", "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "slots": 1 }, "Quartermaster": { - "outfit": "/datum/outfit/job/quartermaster", + "outfit": "/datum/outfit/job/independent/quartermaster", "slots": 1 }, "Medical Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Station Engineer": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Shaft Miner": { - "outfit": "/datum/outfit/job/miner", + "outfit": "/datum/outfit/job/independent/miner", "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 3 } }, diff --git a/_maps/configs/independent_mudskipper.json b/_maps/configs/independent_mudskipper.json index 22de128d2667..1dfd48861d13 100644 --- a/_maps/configs/independent_mudskipper.json +++ b/_maps/configs/independent_mudskipper.json @@ -19,16 +19,16 @@ "starting_funds": 1500, "job_slots": { "Salvage Leader": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "officer": true, "slots": 1 }, - "Salvagee": { - "outfit": "/datum/outfit/job/engineer/independent/ship_engineer/salvage", + "Salvager": { + "outfit": "/datum/outfit/job/independent/engineer/salvage", "slots": 2 }, "Salvage Technician": { - "outfit": "/datum/outfit/job/engineer/gloved", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 } }, diff --git a/_maps/configs/independent_nemo.json b/_maps/configs/independent_nemo.json index 8733d8aa0d1e..c77883168b5e 100644 --- a/_maps/configs/independent_nemo.json +++ b/_maps/configs/independent_nemo.json @@ -18,39 +18,39 @@ "map_path": "_maps/shuttles/independent/independent_nemo.dmm", "job_slots": { "Research Director": { - "outfit": "/datum/outfit/job/rd", + "outfit": "/datum/outfit/job/independent/rd", "slots": 1 }, "Fauna Researcher": { - "outfit": "/datum/outfit/job/scientist", + "outfit": "/datum/outfit/job/independent/scientist", "slots": 1 }, "Fauna Retrieval Specialist": { - "outfit": "/datum/outfit/job/miner/scientist", + "outfit": "/datum/outfit/job/independent/miner/scientist", "slots": 1 }, "Excavator": { - "outfit": "/datum/outfit/job/miner/hazard", + "outfit": "/datum/outfit/job/independent/miner", "slots": 1 }, "Mech Pilot": { - "outfit": "/datum/outfit/job/roboticist/technician", + "outfit": "/datum/outfit/job/independent/roboticist", "slots": 1 }, "Ship Engineer": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Atmospheric Technician": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/independent/atmos", "slots": 1 }, "Curator": { - "outfit": "/datum/outfit/job/curator", + "outfit": "/datum/outfit/job/independent/curator", "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 1 } }, diff --git a/_maps/configs/independent_rigger.json b/_maps/configs/independent_rigger.json index 324cf75dd3ea..77b85ce0bede 100644 --- a/_maps/configs/independent_rigger.json +++ b/_maps/configs/independent_rigger.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", "map_name": "Riggs-class Sloop", - "prefix": "SV", + "prefix": "ISV", "namelists": [ "GENERAL", "SPACE", @@ -21,37 +21,37 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/western", + "outfit": "/datum/outfit/job/independent/captain/western", "officer": true, "slots": 1 }, "First Mate": { - "outfit": "/datum/outfit/job/head_of_personnel/western", + "outfit": "/datum/outfit/job/independent/hop/western", "officer": true, "slots": 1 }, "Ship's Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Machinist's Mate": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 2 }, "Asteroid Miner": { - "outfit": "/datum/outfit/job/miner/hazard", + "outfit": "/datum/outfit/job/independent/miner", "slots": 2 }, "Mech Technician": { - "outfit": "/datum/outfit/job/roboticist/technician", + "outfit": "/datum/outfit/job/independent/roboticist", "slots": 1 }, "Security Detail": { - "outfit": "/datum/outfit/job/security/western", + "outfit": "/datum/outfit/job/independent/security/western", "slots": 1 }, "Deckhand": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 4 } }, diff --git a/_maps/configs/independent_rube_goldberg.json b/_maps/configs/independent_rube_goldberg.json index 055dbc86ee68..74adc118c512 100644 --- a/_maps/configs/independent_rube_goldberg.json +++ b/_maps/configs/independent_rube_goldberg.json @@ -13,28 +13,28 @@ "limit": 1, "job_slots": { "Chief at Engineering": { - "outfit": "/datum/outfit/job/ce", + "outfit": "/datum/outfit/job/independent/ce", "officer": true, "slots": 1 }, "Chief at Boozineering": { - "outfit": "/datum/outfit/job/bartender", + "outfit": "/datum/outfit/job/independent/bartender", "slots": 1 }, "Engineering Specialist": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 2 }, "Atmospheric Specialist": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/independent/atmos", "slots": 2 }, "Medical Specialist": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Mining Specialist": { - "outfit": "/datum/outfit/job/miner", + "outfit": "/datum/outfit/job/independent/miner", "slots": 2 } } diff --git a/_maps/configs/independent_schmiedeberg.json b/_maps/configs/independent_schmiedeberg.json index a21435659743..d7dd360bb1e4 100644 --- a/_maps/configs/independent_schmiedeberg.json +++ b/_maps/configs/independent_schmiedeberg.json @@ -17,27 +17,27 @@ "limit": 2, "job_slots": { "Chief Pharmacist": { - "outfit": "/datum/outfit/job/cmo/pharma", + "outfit": "/datum/outfit/job/independent/cmo/pharma", "officer": true, "slots": 1 }, "Pharmacist": { - "outfit": "/datum/outfit/job/chemist/pharma", + "outfit": "/datum/outfit/job/independent/chemist/pharma", "officer": false, "slots": 1 }, "Mixologist": { - "outfit": "/datum/outfit/job/bartender/pharma", + "outfit": "/datum/outfit/job/independent/bartender/pharma", "officer": false, "slots": 1 }, "Herbalist": { - "outfit": "/datum/outfit/job/botanist/pharma", + "outfit": "/datum/outfit/job/independent/botanist/pharma", "officer": false, "slots": 2 }, "Pharmacology Student": { - "outfit": "/datum/outfit/job/assistant/pharma", + "outfit": "/datum/outfit/job/independent/assistant/pharma", "officer": false, "slots": 2 } diff --git a/_maps/configs/independent_shepherd.json b/_maps/configs/independent_shepherd.json index ce677e1d3d11..05b27bdd5e1b 100644 --- a/_maps/configs/independent_shepherd.json +++ b/_maps/configs/independent_shepherd.json @@ -9,25 +9,25 @@ "Service" ], "map_path": "_maps/shuttles/independent/independent_shepherd.dmm", - "prefix": "ISV", + "prefix": "SV", "namelists": [ "MYTHOLOGICAL" ], "job_slots": { "Chaplain": { - "outfit": "/datum/outfit/job/chaplain", + "outfit": "/datum/outfit/job/independent/chaplain", "slots": 1 }, "Curator": { - "outfit": "/datum/outfit/job/curator", + "outfit": "/datum/outfit/job/independent/curator", "slots": 1 }, "Station Engineer": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Acolyte": { - "outfit": "/datum/outfit/job/assistant/intern", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 6 } }, diff --git a/_maps/configs/independent_shetland.json b/_maps/configs/independent_shetland.json index 3923bed47db5..8769559072e0 100644 --- a/_maps/configs/independent_shetland.json +++ b/_maps/configs/independent_shetland.json @@ -1,6 +1,6 @@ { "map_name": "Shetland-class Multipurpose Frigate", - "prefix": "ISV", + "prefix": "SV", "namelists": [ "GENERAL", "SPACE", @@ -18,49 +18,49 @@ "roundstart": true, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain", + "outfit": "/datum/outfit/job/independent/captain", "officer": true, "slots": 1 }, "First Mate": { - "outfit": "/datum/outfit/job/head_of_personnel", + "outfit": "/datum/outfit/job/independent/hop", "officer": true, "slots": 1 }, "Medical Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/independent/doctor", "slots": 1 }, "Paramedic": { - "outfit": "/datum/outfit/job/paramedic", + "outfit": "/datum/outfit/job/independent/paramedic", "slots": 1 }, "Ship's Engineer": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Atmospheric Technician": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/independent/atmos", "slots": 1 }, "Asteroid Miner": { - "outfit": "/datum/outfit/job/miner/hazard", + "outfit": "/datum/outfit/job/independent", "slots": 2 }, "Security Detail": { - "outfit": "/datum/outfit/job/security", + "outfit": "/datum/outfit/job/independent/security", "slots": 1 }, "Detective": { - "outfit": "/datum/outfit/job/detective", + "outfit": "/datum/outfit/job/independent/detective", "slots": 1 }, "Janitor": { - "outfit": "/datum/outfit/job/janitor", + "outfit": "/datum/outfit/job/independent/janitor", "slots": 1 }, "Deckhand": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/independent/assistant", "slots": 5 } }, diff --git a/_maps/configs/independent_tranquility.json b/_maps/configs/independent_tranquility.json index a7ddabe6e4de..07236d5e4568 100644 --- a/_maps/configs/independent_tranquility.json +++ b/_maps/configs/independent_tranquility.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", "map_name": "Tranquility-class Flying Apartment Complex", - "prefix": "ISV", + "prefix": "SV", "namelists": [ "GENERAL", "SPACE", @@ -17,28 +17,28 @@ "map_path": "_maps/shuttles/independent/independent_tranquility.dmm", "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/western", + "outfit": "/datum/outfit/job/independent/captain/western", "officer": true, "slots": 1 }, "Scholar": { - "outfit": "/datum/outfit/job/curator/librarian", + "outfit": "/datum/outfit/job/independent/curator", "slots": 1 }, "Medical Tenant": { - "outfit": "/datum/outfit/job/chemist/pharmacologist", + "outfit": "/datum/outfit/job/independent/chemist", "slots": 1 }, "Engineering Tenant": { - "outfit": "/datum/outfit/job/engineer", + "outfit": "/datum/outfit/job/independent/engineer", "slots": 1 }, "Tenant": { - "outfit": "/datum/outfit/job/curator/dungeonmaster", + "outfit": "/datum/outfit/job/independent/curator/dungeonmaster", "slots": 1 }, "Resident Artist": { - "outfit": "/datum/outfit/job/assistant/artist", + "outfit": "/datum/outfit/job/independent/assistant/artist", "slots": 1 } }, diff --git a/_maps/configs/inteq_colossus.json b/_maps/configs/inteq_colossus.json index 06a1358c3e95..29337cb015a2 100644 --- a/_maps/configs/inteq_colossus.json +++ b/_maps/configs/inteq_colossus.json @@ -18,29 +18,29 @@ "limit": 1, "job_slots": { "Vanguard": { - "outfit": "/datum/outfit/job/captain/inteq/naked", + "outfit": "/datum/outfit/job/inteq/captain", "officer": true, "slots": 1 }, "Master At Arms": { - "outfit": "/datum/outfit/job/warden/inteq", + "outfit": "/datum/outfit/job/inteq/warden", "officer": true, "slots": 1 }, "Artificer": { - "outfit": "/datum/outfit/job/engineer/inteq", + "outfit": "/datum/outfit/job/inteq/engineer", "slots": 1 }, "Corpsman": { - "outfit": "/datum/outfit/job/paramedic/inteq", + "outfit": "/datum/outfit/job/inteq/paramedic", "slots": 1 }, "Enforcer": { - "outfit": "/datum/outfit/job/security/inteq", + "outfit": "/datum/outfit/job/inteq/security", "slots": 3 }, "Recruit": { - "outfit": "/datum/outfit/job/assistant/inteq", + "outfit": "/datum/outfit/job/inteq/assistant", "slots": 5 } }, diff --git a/_maps/configs/inteq_hound.json b/_maps/configs/inteq_hound.json index 80e8349de9ec..cad19884158f 100644 --- a/_maps/configs/inteq_hound.json +++ b/_maps/configs/inteq_hound.json @@ -17,16 +17,16 @@ "limit": 2, "job_slots": { "Vanguard": { - "outfit": "/datum/outfit/job/captain/inteq/naked", + "outfit": "/datum/outfit/job/inteq/captain", "officer": true, "slots": 1 }, "Enforcer": { - "outfit": "/datum/outfit/job/security/inteq", + "outfit": "/datum/outfit/job/inteq/security", "slots": 3 }, "Recruit": { - "outfit": "/datum/outfit/job/assistant/inteq", + "outfit": "/datum/outfit/job/inteq/assistant", "slots": 3 } }, diff --git a/_maps/configs/inteq_talos.json b/_maps/configs/inteq_talos.json index c298846d55b0..e65253ad3239 100644 --- a/_maps/configs/inteq_talos.json +++ b/_maps/configs/inteq_talos.json @@ -18,34 +18,34 @@ "limit": 1, "job_slots": { "Vanguard": { - "outfit": "/datum/outfit/job/captain/inteq", + "outfit": "/datum/outfit/job/inteq/captain", "officer": true, "slots": 1 }, "Master At Arms": { - "outfit": "/datum/outfit/job/warden/inteq", + "outfit": "/datum/outfit/job/inteq/warden", "officer": true, "slots": 1 }, "Artificer Class II": { - "outfit": "/datum/outfit/job/ce/inteq", + "outfit": "/datum/outfit/job/inteq/ce", "officer": true, "slots": 1 }, "Artificer": { - "outfit": "/datum/outfit/job/engineer/inteq", + "outfit": "/datum/outfit/job/inteq/engineer", "slots": 3 }, "Corpsman": { - "outfit": "/datum/outfit/job/paramedic/inteq", + "outfit": "/datum/outfit/job/inteq/paramedic", "slots": 2 }, "Enforcer": { - "outfit": "/datum/outfit/job/security/inteq", + "outfit": "/datum/outfit/job/inteq/security", "slots": 1 }, "Recruit": { - "outfit": "/datum/outfit/job/assistant/inteq", + "outfit": "/datum/outfit/job/inteq/assistant", "slots": 4 } }, diff --git a/_maps/configs/inteq_vaquero.json b/_maps/configs/inteq_vaquero.json index 72b2ae65d257..e8d790a526dc 100644 --- a/_maps/configs/inteq_vaquero.json +++ b/_maps/configs/inteq_vaquero.json @@ -15,29 +15,29 @@ "limit": 1, "job_slots": { "Vanguard": { - "outfit": "/datum/outfit/job/captain/inteq/naked", + "outfit": "/datum/outfit/job/inteq/captain", "officer": true, "slots": 1 }, "Master At Arms": { - "outfit": "/datum/outfit/job/warden/inteq", + "outfit": "/datum/outfit/job/inteq/warden", "officer": true, "slots": 1 }, "Artificer": { - "outfit": "/datum/outfit/job/engineer/inteq", + "outfit": "/datum/outfit/job/inteq/engineer", "slots": 1 }, "Corpsman": { - "outfit": "/datum/outfit/job/paramedic/inteq", + "outfit": "/datum/outfit/job/inteq/paramedic", "slots": 1 }, "Enforcer": { - "outfit": "/datum/outfit/job/security/inteq", + "outfit": "/datum/outfit/job/inteq/security", "slots": 1 }, "Recruit": { - "outfit": "/datum/outfit/job/assistant/inteq", + "outfit": "/datum/outfit/job/inteq/assistant", "slots": 2 } }, diff --git a/_maps/configs/minutemen_asclepius.json b/_maps/configs/minutemen_asclepius.json index 6923097d0447..3877d1e24549 100644 --- a/_maps/configs/minutemen_asclepius.json +++ b/_maps/configs/minutemen_asclepius.json @@ -17,32 +17,32 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/minutemen", + "outfit": "/datum/outfit/job/minutemen/captain", "officer": true, "slots": 1 }, "Mechanic": { - "outfit": "/datum/outfit/job/engineer/minutemen", + "outfit": "/datum/outfit/job/minutemen/engineer", "slots": 1 }, "Minuteman": { - "outfit": "/datum/outfit/job/security/minutemen", + "outfit": "/datum/outfit/job/minutemen/security", "slots": 1 }, "Cadet": { - "outfit": "/datum/outfit/job/assistant/minutemen", + "outfit": "/datum/outfit/job/minutemen/assistant", "slots": 3 }, "Field Medic": { - "outfit": "/datum/outfit/job/doctor/minutemen", + "outfit": "/datum/outfit/job/minutemen/doctor", "slots": 3 }, "Paramedic":{ - "outfit": "/datum/outfit/job/paramedic/minutemen", + "outfit": "/datum/outfit/job/minutemen/paramedic", "slots": 2 }, "Chemist":{ - "outfit": "/datum/outfit/job/chemist/minutemen", + "outfit": "/datum/outfit/job/minutemen/chemist", "slots": 1 } }, diff --git a/_maps/configs/minutemen_cepheus.json b/_maps/configs/minutemen_cepheus.json index c82468a59349..e9b51f1b3a02 100644 --- a/_maps/configs/minutemen_cepheus.json +++ b/_maps/configs/minutemen_cepheus.json @@ -15,28 +15,28 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/minutemen", + "outfit": "/datum/outfit/job/minutemen/captain", "officer": true, "slots": 1 }, "Mechanic": { - "outfit": "/datum/outfit/job/engineer/minutemen", + "outfit": "/datum/outfit/job/minutemen/engineer", "slots": 1 }, "Minuteman": { - "outfit": "/datum/outfit/job/security/minutemen", + "outfit": "/datum/outfit/job/minutemen/security", "slots": 2 }, "Mech Pilot" :{ - "outfit": "/datum/outfit/job/security/minutemen/mechpilot", + "outfit": "/datum/outfit/job/minutemen/security/mech_pilot", "slots": 2 }, "Roboticist": { - "outfit": "/datum/outfit/job/roboticist/technician/minutemen", + "outfit": "/datum/outfit/job/minutemen/roboticist", "slots": 1 }, "Cadet": { - "outfit": "/datum/outfit/job/assistant/minutemen", + "outfit": "/datum/outfit/job/minutemen/assistant", "slots": 3 } }, diff --git a/_maps/configs/minutemen_corvus.json b/_maps/configs/minutemen_corvus.json index 1080c81f59a4..502a67ce6b03 100644 --- a/_maps/configs/minutemen_corvus.json +++ b/_maps/configs/minutemen_corvus.json @@ -16,20 +16,20 @@ "limit": 2, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/minutemen", + "outfit": "/datum/outfit/job/minutemen/captain", "officer": true, "slots": 1 }, "Mechanic": { - "outfit": "/datum/outfit/job/engineer/minutemen", + "outfit": "/datum/outfit/job/minutemen/engineer", "slots": 1 }, "Minuteman": { - "outfit": "/datum/outfit/job/security/minutemen", + "outfit": "/datum/outfit/job/minutemen/security", "slots": 2 }, "Cadet": { - "outfit": "/datum/outfit/job/assistant/minutemen", + "outfit": "/datum/outfit/job/minutemen/assistant", "slots": 2 } }, diff --git a/_maps/configs/minutemen_vela.json b/_maps/configs/minutemen_vela.json index eed473a983ff..e7ea8ba86df4 100644 --- a/_maps/configs/minutemen_vela.json +++ b/_maps/configs/minutemen_vela.json @@ -15,41 +15,41 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/minutemen", + "outfit": "/datum/outfit/job/minutemen/captain", "officer": true, "slots": 1 }, "Foreman": { - "outfit": "/datum/outfit/job/ce/minutemen", + "outfit": "/datum/outfit/job/minutemen/ce", "officer": true, "slots": 1 }, "Bridge Officer": { - "outfit": "/datum/outfit/job/head_of_personnel/minutemen", + "outfit": "/datum/outfit/job/minutemen/head_of_personnel", "slots": 1 }, "Mech Pilot": { - "outfit": "/datum/outfit/job/miner/hazard/minutemen", + "outfit": "/datum/outfit/job/minutemen/miner", "slots": 4 }, "Mech Technician": { - "outfit": "/datum/outfit/job/roboticist/technician/minutemen", + "outfit": "/datum/outfit/job/minutemen/roboticist", "slots": 2 }, "Engineer": { - "outfit": "/datum/outfit/job/engineer/minutemen", + "outfit": "/datum/outfit/job/minutemen/engineer", "slots": 2 }, "Minuteman": { - "outfit": "/datum/outfit/job/security/minutemen", + "outfit": "/datum/outfit/job/minutemen/security", "slots": 2 }, "Scientist": { - "outfit": "/datum/outfit/job/scientist/minutemen", + "outfit": "/datum/outfit/job/minutemen/scientist", "slots": 2 }, "Cadet": { - "outfit": "/datum/outfit/job/assistant/minutemen", + "outfit": "/datum/outfit/job/minutemen/assistant", "slots": 1 } }, diff --git a/_maps/configs/nanotrasen_delta.json b/_maps/configs/nanotrasen_delta.json index 749e0240a6ba..f367497a820e 100644 --- a/_maps/configs/nanotrasen_delta.json +++ b/_maps/configs/nanotrasen_delta.json @@ -19,20 +19,20 @@ "starting_funds": 4000, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/nt", + "outfit": "/datum/outfit/job/nanotrasen/captain", "officer": true, "slots": 1 }, "Roboticist": { - "outfit": "/datum/outfit/job/roboticist", + "outfit": "/datum/outfit/job/nanotrasen/roboticist", "slots": 2 }, "Engineer": { - "outfit": "/datum/outfit/job/engineer/nt", + "outfit": "/datum/outfit/job/nanotrasen/engineer", "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/nanotrasen/assistant", "slots": 3 } }, diff --git a/_maps/configs/nanotrasen_gecko.json b/_maps/configs/nanotrasen_gecko.json index 1a8e59f73ece..9ba0672f03db 100644 --- a/_maps/configs/nanotrasen_gecko.json +++ b/_maps/configs/nanotrasen_gecko.json @@ -18,25 +18,25 @@ "starting_funds": 5000, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/nt", + "outfit": "/datum/outfit/job/nanotrasen/captain", "officer": true, "slots": 1 }, "Operations Chief": { - "outfit": "/datum/outfit/job/ce", + "outfit": "/datum/outfit/job/nanotrasen/ce", "officer": true, "slots": 1 }, "Engine Technician": { - "outfit": "/datum/outfit/job/engineer/nt", + "outfit": "/datum/outfit/job/nanotrasen/engineer", "slots": 2 }, "Salvage Technician": { - "outfit": "/datum/outfit/job/miner/classic", + "outfit": "/datum/outfit/job/nanotrasen/miner", "slots": 2 }, "Deckhand": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/nanotrasen/assistant", "slots": 4 } }, diff --git a/_maps/configs/nanotrasen_heron.json b/_maps/configs/nanotrasen_heron.json index fbe11a792000..80bf87c0cd15 100644 --- a/_maps/configs/nanotrasen_heron.json +++ b/_maps/configs/nanotrasen_heron.json @@ -10,60 +10,60 @@ "limit": 1, "job_slots": { "Fleet Captain": { - "outfit": "/datum/outfit/job/captain/nt/heron", + "outfit": "/datum/outfit/job/nanotrasen/captain/centcom", "officer": true, "slots": 1 }, "First Officer": { - "outfit": "/datum/outfit/job/head_of_personnel/nt", + "outfit": "/datum/outfit/job/nanotrasen/hop", "officer": true, "slots": 1 }, "Head of Security": { - "outfit": "/datum/outfit/job/hos/nanotrasen", + "outfit": "/datum/outfit/job/nanotrasen/hos", "officer": true, "slots": 1 }, "Pilot": { - "outfit": "/datum/outfit/job/head_of_personnel/pilot/heron", + "outfit": "/datum/outfit/job/nanotrasen/pilot", "officer": true, "slots": 1 }, "Security Officer": { - "outfit": "/datum/outfit/job/security/nanotrasen", + "outfit": "/datum/outfit/job/nanotrasen/security", "slots": 1 }, "ERT Officer":{ - "outfit": "/datum/outfit/job/security/nanotrasen/ert", + "outfit": "/datum/outfit/job/nanotrasen/security/ert", "slots": 4 }, "ERT Medical Officer":{ - "outfit": "/datum/outfit/job/security/nanotrasen/ert/med", + "outfit": "/datum/outfit/job/nanotrasen/security/ert/med", "slots": 1 }, "ERT Engineering Officer":{ - "outfit": "/datum/outfit/job/security/nanotrasen/ert/engi", + "outfit": "/datum/outfit/job/nanotrasen/security/ert/engi", "slots": 1 }, "Mech Pilot":{ - "outfit": "/datum/outfit/job/security/nanotrasen/mech_pilot", + "outfit": "/datum/outfit/job/nanotrasen/security/mech_pilot", "slots": 1 }, "Engine Technician": { - "outfit": "/datum/outfit/job/engineer/nt", + "outfit": "/datum/outfit/job/nanotrasen/engineer", "slots": 1 }, "Chief Engineer":{ - "outfit": "/datum/outfit/job/ce/nt", + "outfit": "/datum/outfit/job/nanotrasen/ce", "officer": true, "slots": 1 }, "Roboticist": { - "outfit":"/datum/outfit/job/roboticist/heron", + "outfit":"/datum/outfit/job/nanotrasen/roboticist", "slots": 1 }, "Medical Doctor":{ - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/nanotrasen/doctor", "slots": 1 }, diff --git a/_maps/configs/nanotrasen_mimir.json b/_maps/configs/nanotrasen_mimir.json index 273d17ad5705..db7d8b90d198 100644 --- a/_maps/configs/nanotrasen_mimir.json +++ b/_maps/configs/nanotrasen_mimir.json @@ -19,16 +19,16 @@ "limit": 1, "job_slots": { "Warden": { - "outfit": "/datum/outfit/job/warden", + "outfit": "/datum/outfit/job/nanotrasen/warden", "officer": true, "slots": 1 }, "Facility Security Officer": { - "outfit": "/datum/outfit/job/security", + "outfit": "/datum/outfit/job/nanotrasen/security", "slots": 2 }, "Facility Physician": { - "outfit": "/datum/outfit/job/brig_phys", + "outfit": "/datum/outfit/job/nanotrasen/brig_phys", "slots": 1 }, "Patient": { diff --git a/_maps/configs/nanotrasen_osprey.json b/_maps/configs/nanotrasen_osprey.json index d88127f1a177..7e0804a7f203 100644 --- a/_maps/configs/nanotrasen_osprey.json +++ b/_maps/configs/nanotrasen_osprey.json @@ -16,45 +16,45 @@ "starting_funds": 4000, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/nt", + "outfit": "/datum/outfit/job/nanotrasen/captain", "officer": true, "slots": 1 }, "First Officer": { - "outfit": "/datum/outfit/job/head_of_personnel/nt", + "outfit": "/datum/outfit/job/nanotrasen/hop", "officer": true, "slots": 1 }, "Scientist": { - "outfit": "/datum/outfit/job/scientist", + "outfit": "/datum/outfit/job/nanotrasen/scientist", "slots": 2 }, "Medical Doctor": { - "outfit": "/datum/outfit/job/doctor", + "outfit": "/datum/outfit/job/nanotrasen/doctor", "slots": 1 }, "Paramedic": { - "outfit": "/datum/outfit/job/paramedic", + "outfit": "/datum/outfit/job/nanotrasen/paramedic", "slots": 1 }, "Engineer": { - "outfit": "/datum/outfit/job/engineer/nt", + "outfit": "/datum/outfit/job/nanotrasen/engineer", "slots": 1 }, "Atmospheric Technician": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/nanotrasen/atmos", "slots": 1 }, "Quartermaster": { - "outfit": "/datum/outfit/job/quartermaster", + "outfit": "/datum/outfit/job/nanotrasen/quartermaster", "slots": 1 }, "Cargo Technician": { - "outfit": "/datum/outfit/job/cargo_tech", + "outfit": "/datum/outfit/job/nanotrasen/cargo_tech", "slots": 1 }, "Shaft Miner": { - "outfit": "/datum/outfit/job/miner/classic", + "outfit": "/datum/outfit/job/nanotrasen/miner", "slots": 1 }, "Cook": { @@ -66,7 +66,7 @@ "slots": 1 }, "Assistant": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/nanotrasen/assistant", "slots": 3 } }, diff --git a/_maps/configs/nanotrasen_ranger.json b/_maps/configs/nanotrasen_ranger.json index 6c2d24f439f9..b4af3e797d39 100644 --- a/_maps/configs/nanotrasen_ranger.json +++ b/_maps/configs/nanotrasen_ranger.json @@ -22,24 +22,24 @@ "limit": 1, "job_slots": { "LP Lieutenant": { - "outfit": "/datum/outfit/job/captain/nt/lp_lieutenant", + "outfit": "/datum/outfit/job/nanotrasen/captain/lp", "officer": true, "slots": 1 }, "LP Engineering Specialist": { - "outfit": "/datum/outfit/job/engineer/lp", + "outfit": "/datum/outfit/job/nanotrasen/engineer/lp", "slots": 1 }, "LP Security Specialist": { - "outfit": "/datum/outfit/job/security/lp", + "outfit": "/datum/outfit/job/nanotrasen/security/lp", "slots": 1 }, "LP Medical Specialist": { - "outfit": "/datum/outfit/job/doctor/lp", + "outfit": "/datum/outfit/job/nanotrasen/doctor/lp", "slots": 1 }, "Intern": { - "outfit": "/datum/outfit/job/assistant", + "outfit": "/datum/outfit/job/nanotrasen/assistant", "slots": 1 } }, diff --git a/_maps/configs/nanotrasen_skipper.json b/_maps/configs/nanotrasen_skipper.json index 0b3d24ec9918..9ced4c28038c 100644 --- a/_maps/configs/nanotrasen_skipper.json +++ b/_maps/configs/nanotrasen_skipper.json @@ -20,35 +20,35 @@ "roundstart": true, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/nt", + "outfit": "/datum/outfit/job/nanotrasen/captain", "officer": true, "slots": 1 }, "First Officer": { - "outfit": "/datum/outfit/job/head_of_personnel/nt", + "outfit": "/datum/outfit/job/nanotrasen/hop", "officer": true, "slots": 1 }, "Internal Affairs Agent": { - "outfit": "/datum/outfit/job/lawyer/corporaterepresentative", + "outfit": "/datum/outfit/job/nanotrasen/lawyer/corporaterepresentative", "slots" : 1 }, "Medical Doctor": 1, "Engineer": { - "outfit": "/datum/outfit/job/engineer/nt", + "outfit": "/datum/outfit/job/nanotrasen/engineer", "slots": 1 }, "Atmospheric Technician": { - "outfit": "/datum/outfit/job/atmos", + "outfit": "/datum/outfit/job/nanotrasen/atmos", "slots": 1 }, "Shaft Miner": 2, "Cargo Technician": { - "outfit": "/datum/outfit/job/cargo_tech", + "outfit": "/datum/outfit/job/nanotrasen/cargo_tech", "slots": 1 }, "Security Officer": { - "outfit": "/datum/outfit/job/security/nanotrasen", + "outfit": "/datum/outfit/job/nanotrasen/security", "slots": 1 }, "Cook": { diff --git a/_maps/configs/pirate_ember.json b/_maps/configs/pirate_ember.json index 52b511afefe1..29a45c64cd6c 100644 --- a/_maps/configs/pirate_ember.json +++ b/_maps/configs/pirate_ember.json @@ -18,51 +18,51 @@ "limit": 1, "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/frontiersmen", + "outfit": "/datum/outfit/job/frontiersmen/captain", "officer": true, "slots": 1 }, "Bridge Officer": { - "outfit": "/datum/outfit/job/head_of_personnel/frontiersmen", + "outfit": "/datum/outfit/job/frontiersmen/hop", "officer": true, "slots": 2 }, - "Master At Arms": { - "outfit": "/datum/outfit/job/hos/frontiersmen", + "Shipswain": { + "outfit": "/datum/outfit/job/frontiersmen/hos", "officer": true, "slots": 1 }, - "Head Carpenter" :{ - "outfit": "/datum/outfit/job/ce/frontiersmen", + "Senior Sapper" :{ + "outfit": "/datum/outfit/job/frontiersmen/ce", "officer": true, "slots": 1 }, "Cargo Tech": { - "outfit": "/datum/outfit/job/cargo_tech/frontiersmen", + "outfit": "/datum/outfit/job/frontiersmen/cargo_tech", "slots": 2 }, - "Surgeon": { - "outfit": "/datum/outfit/job/doctor/frontiersmen", + "Aidman": { + "outfit": "/datum/outfit/job/frontiersmen/doctor", "slots": 1 }, - "Carpenter": { - "outfit": "/datum/outfit/job/engineer/independent/frontiersmen", + "Sapper": { + "outfit": "/datum/outfit/job/frontiersmen/engineer", "slots": 2 }, "Atmospheric Technician": { - "outfit": "/datum/outfit/job/atmos/frontiersmen", + "outfit": "/datum/outfit/job/frontiersmen/atmos", "slots": 1 }, "Steward": { - "outfit": "/datum/outfit/job/cook/frontiersmen", + "outfit": "/datum/outfit/job/frontiersmen/cook", "slots": 1 }, - "Deckhand": { - "outfit": "/datum/outfit/job/assistant/frontiersmen", + "Boarder": { + "outfit": "/datum/outfit/job/frontiersmen/security", "slots": 3 }, - "Buccaneer": { - "outfit": "/datum/outfit/job/security/Frontiersmen", + "Rookie": { + "outfit": "/datum/outfit/job/frontiersmen/assistant", "slots": 3 } }, diff --git a/_maps/configs/pirate_libertatia.json b/_maps/configs/pirate_libertatia.json index 1dd3654a93f7..f61e421b0952 100644 --- a/_maps/configs/pirate_libertatia.json +++ b/_maps/configs/pirate_libertatia.json @@ -14,29 +14,29 @@ ], "job_slots": { "Captain": { - "outfit": "/datum/outfit/job/captain/pirate", + "outfit": "/datum/outfit/job/independent/captain/pirate", "officer": true, "slots": 1 }, "First Mate": { - "outfit": "/datum/outfit/job/head_of_personnel/pirate", + "outfit": "/datum/outfit/job/independent/hop/pirate", "officer": true, "slots": 1 }, "Buccaneer": { - "outfit": "/datum/outfit/job/security/pirate", + "outfit": "/datum/outfit/job/independent/security/pirate", "slots": 2 }, "Motorman": { - "outfit": "/datum/outfit/job/engineer/pirate", + "outfit": "/datum/outfit/job/independent/engineer/pirate", "slots": 1 }, "Ship's Doctor": { - "outfit": "/datum/outfit/job/doctor/pirate", + "outfit": "/datum/outfit/job/independent/doctor/pirate", "slots": 1 }, "Deckhand": { - "outfit": "/datum/outfit/job/assistant/pirate", + "outfit": "/datum/outfit/job/independent/assistant/pirate", "slots": 4 } }, diff --git a/_maps/configs/pirate_noderider.json b/_maps/configs/pirate_noderider.json index c46b88bee91b..1341a6197635 100644 --- a/_maps/configs/pirate_noderider.json +++ b/_maps/configs/pirate_noderider.json @@ -17,20 +17,20 @@ ], "job_slots": { "Command Node": { - "outfit": "/datum/outfit/job/captain/aipirate", + "outfit": "/datum/outfit/job/independent/captain/pirate/jupiter", "officer": true, "slots": 1 }, "Assault Node": { - "outfit": "/datum/outfit/job/security/aipirate", + "outfit": "/datum/outfit/job/independent/security/pirate/jupiter", "slots": 2 }, "Engineering Node": { - "outfit": "/datum/outfit/job/engineer/aipirate", + "outfit": "/datum/outfit/job/independent/engineer/pirate/jupiter", "slots": 1 }, "Fodder": { - "outfit": "/datum/outfit/job/assistant/aipirate", + "outfit": "/datum/outfit/job/independent/assistant/pirate/jupiter", "slots": 2 } }, diff --git a/_maps/configs/srm_glaive.json b/_maps/configs/srm_glaive.json index f71c8b2398fc..1c4cb6f91f86 100644 --- a/_maps/configs/srm_glaive.json +++ b/_maps/configs/srm_glaive.json @@ -18,20 +18,20 @@ "limit": 1, "job_slots": { "Hunter Montagne": { - "outfit": "/datum/outfit/job/hos/roumain", + "outfit": "/datum/outfit/job/roumain/captain", "officer": true, "slots": 1 }, "Hunter Doctor": { - "outfit": "/datum/outfit/job/doctor/roumain", + "outfit": "/datum/outfit/job/roumain/doctor", "slots": 1 }, "Hunter": { - "outfit": "/datum/outfit/job/security/roumain", + "outfit": "/datum/outfit/job/roumain/security", "slots": 3 }, "Shadow": { - "outfit": "/datum/outfit/job/assistant/roumain", + "outfit": "/datum/outfit/job/roumain/assistant", "slots": 3 } }, diff --git a/_maps/configs/syndicate_aegis.json b/_maps/configs/syndicate_aegis.json index 9dc307f7f091..6863c4e11279 100644 --- a/_maps/configs/syndicate_aegis.json +++ b/_maps/configs/syndicate_aegis.json @@ -1,5 +1,5 @@ { - "prefix": "SSV", + "prefix": "SUNS", "map_name": "Aegis-class Long Term Care Ship", "map_short_name": "Aegis-class", "map_path": "_maps/shuttles/syndicate/syndicate_aegis.dmm", diff --git a/_maps/configs/syndicate_cybersun_kansatsu.json b/_maps/configs/syndicate_cybersun_kansatsu.json index fbde6dc608d6..a9c9fcb94349 100644 --- a/_maps/configs/syndicate_cybersun_kansatsu.json +++ b/_maps/configs/syndicate_cybersun_kansatsu.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", - "prefix": "SSV", + "prefix": "CSSV", "namelists": [ "CYBERSUN", "SPACE", diff --git a/_maps/configs/syndicate_gorlex_hyena.json b/_maps/configs/syndicate_gorlex_hyena.json index 4e9086139275..51b046d114b7 100644 --- a/_maps/configs/syndicate_gorlex_hyena.json +++ b/_maps/configs/syndicate_gorlex_hyena.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", - "prefix": "SSV", + "prefix": "NGRV", "namelists": [ "GORLEX", "NATURAL_AGGRESSIVE", diff --git a/_maps/configs/syndicate_gorlex_komodo.json b/_maps/configs/syndicate_gorlex_komodo.json index 5692eaf44a14..595b61b079d9 100644 --- a/_maps/configs/syndicate_gorlex_komodo.json +++ b/_maps/configs/syndicate_gorlex_komodo.json @@ -1,5 +1,5 @@ { - "prefix": "SSV", + "prefix": "ISV", "namelists": [ "GORLEX", "NATURAL_AGGRESSIVE", diff --git a/_maps/configs/syndicate_litieguai.json b/_maps/configs/syndicate_litieguai.json index 887828e28176..685a53187422 100644 --- a/_maps/configs/syndicate_litieguai.json +++ b/_maps/configs/syndicate_litieguai.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", "map_name": "Li Tieguai-class Rescue Ship", - "prefix": "SSV", + "prefix": "CSSV", "map_short_name": "Li Tieguai-class", "description": "A small, nimble, and exceptionally well-built medical response vessel, the Li Tieguai is a recent addition to Cybersun’s fleet, forming a critical component of their Frontier stabilization program. Li Tieguais come equipped with high-end medical equipment, including a selection of Cybersun augments and prosthetics, as well as weaponry and armor sufficient to protect its personnel in the often-dangerous Frontier sectors, so that they can offer premium healthcare (at premium prices) in even the most dangerous of scenarios.", "tags": [ diff --git a/_maps/configs/syndicate_lugol.json b/_maps/configs/syndicate_lugol.json index 26599d93a8ee..673d9be16ff5 100644 --- a/_maps/configs/syndicate_lugol.json +++ b/_maps/configs/syndicate_lugol.json @@ -1,6 +1,6 @@ { "map_name": "Lugol-class GEC Engineering Project", - "prefix": "SEV", + "prefix": "XSV", "map_short_name": "Lugol-class", "description": "The Lugol is effectively an enormous Galactic Engineers Concordat research barge, used as a test bed for refinements to power systems, new technologies, and so on. As it offers freedom from the usual constraints of working aboard vessels belonging to other Syndicate factions, Lugols are especially popular among the GEC’s more radical members. Accordingly, they have a reputation for either accomplishing the impossible or generating the equivalent of a new star when they inevitably melt down. Lugols are generally only found on the Frontier, where the collateral damage from potential accidents can be kept to a minimum and secrecy, when needed, can be better maintained.", "tags": [ @@ -14,7 +14,7 @@ ], "map_path": "_maps/shuttles/syndicate/syndicate_gec_lugol.dmm", "map_id": "gec_lugol", - "limit": 2, + "limit": 1, "job_slots": { "Project Overseer": { "outfit": "/datum/outfit/job/syndicate/ce/gec", diff --git a/_maps/shuttles/independent/independent_boyardee.dmm b/_maps/shuttles/independent/independent_boyardee.dmm index aa0360e74c32..20a0cacad9ac 100644 --- a/_maps/shuttles/independent/independent_boyardee.dmm +++ b/_maps/shuttles/independent/independent_boyardee.dmm @@ -14,7 +14,7 @@ "as" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/layer4, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "az" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ @@ -36,7 +36,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "cc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 1 @@ -85,7 +85,7 @@ /obj/item/reagent_containers/food/condiment/flour, /obj/item/reagent_containers/food/condiment/sugar, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "cC" = ( /turf/closed/wall/r_wall, /area/ship/crew/canteen) @@ -131,7 +131,7 @@ dir = 1 }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "di" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck/kotahi, @@ -236,7 +236,7 @@ }, /obj/machinery/airalarm/directional/north, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "ep" = ( /obj/effect/turf_decal/corner/opaque/blue{ dir = 1 @@ -251,7 +251,7 @@ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "ev" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -277,7 +277,7 @@ }, /obj/effect/turf_decal/box, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "eG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 9 @@ -362,7 +362,7 @@ dir = 9 }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "gq" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -372,7 +372,7 @@ "gL" = ( /obj/effect/turf_decal/number/two, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "gQ" = ( /obj/machinery/door/airlock/external/glass{ dir = 4; @@ -388,13 +388,13 @@ /obj/effect/turf_decal/box, /obj/machinery/firealarm/directional/south, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "hl" = ( /obj/effect/turf_decal/ihejirika_small/left{ dir = 8 }, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "hs" = ( /obj/structure/table/glass, /obj/machinery/plantgenes, @@ -405,7 +405,7 @@ dir = 8 }, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "hJ" = ( /obj/machinery/firealarm/directional/south, /obj/effect/turf_decal/siding/wood{ @@ -510,7 +510,7 @@ }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "kC" = ( /obj/machinery/light_switch{ dir = 1; @@ -518,7 +518,7 @@ pixel_y = -20 }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "kM" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 1 @@ -617,7 +617,7 @@ /obj/item/spacecash/bundle/c1000, /obj/item/spacecash/bundle/c1000, /turf/open/floor/plasteel/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "me" = ( /obj/structure/window/reinforced/spawner/west, /obj/machinery/power/smes/shuttle/precharged{ @@ -642,7 +642,7 @@ }, /obj/machinery/door/firedoor/border_only, /turf/open/floor/plasteel/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "mk" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ dir = 4 @@ -694,14 +694,14 @@ }, /obj/item/reagent_containers/glass/beaker/large, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "np" = ( /obj/structure/table/reinforced, /obj/machinery/microwave, /obj/effect/turf_decal/box, /obj/effect/turf_decal/corner/opaque/white/half, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "ny" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -730,12 +730,9 @@ }, /turf/open/floor/plating, /area/ship/maintenance) -"nZ" = ( -/turf/closed/wall, -/area/ship/external) "of" = ( /turf/closed/wall/r_wall, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "om" = ( /obj/structure/cable{ icon_state = "2-8" @@ -788,7 +785,7 @@ dir = 1 }, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "pt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /obj/structure/cable{ @@ -803,7 +800,7 @@ "px" = ( /obj/machinery/status_display/shuttle, /turf/closed/wall/r_wall, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "pN" = ( /obj/machinery/atmospherics/components/binary/valve/digital, /obj/structure/cable{ @@ -972,7 +969,7 @@ dir = 1 }, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "rC" = ( /obj/structure/table/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ @@ -986,7 +983,7 @@ canhear_range = 5 }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "rH" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, /obj/structure/cable{ @@ -1136,7 +1133,7 @@ /obj/effect/turf_decal/box, /obj/item/radio/intercom/directional/west, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "vi" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -1182,7 +1179,7 @@ }, /obj/machinery/holopad/emergency/kitchen, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "wF" = ( /obj/structure/table/wood, /obj/item/paper_bin, @@ -1246,7 +1243,7 @@ }, /obj/item/storage/bag/tray, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "xr" = ( /obj/machinery/door/poddoor{ id = "windowlockdown" @@ -1277,7 +1274,7 @@ dir = 10 }, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "xO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -1305,7 +1302,7 @@ /area/ship/crew/canteen) "yi" = ( /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "yk" = ( /obj/machinery/door/poddoor{ id = "cargoblastdoors" @@ -1384,7 +1381,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "zu" = ( /obj/machinery/gibber, /obj/machinery/power/apc/auto_name/directional/west, @@ -1458,7 +1455,7 @@ dir = 8 }, /turf/open/floor/plasteel/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "AF" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 10 @@ -1501,7 +1498,7 @@ "BC" = ( /obj/effect/turf_decal/number/zero, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "BE" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 @@ -1551,7 +1548,7 @@ }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "CP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -1596,7 +1593,7 @@ /obj/effect/turf_decal/box, /obj/item/stack/sheet/mineral/coal/ten, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Df" = ( /obj/machinery/power/shuttle/engine/electric{ dir = 4 @@ -1647,7 +1644,7 @@ }, /obj/effect/turf_decal/corner/opaque/white, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "DA" = ( /obj/machinery/vending/wardrobe/chef_wardrobe, /obj/machinery/light/directional/south, @@ -1659,7 +1656,7 @@ }, /obj/effect/turf_decal/box, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "DC" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -1804,7 +1801,7 @@ dir = 1 }, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Fe" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -1850,7 +1847,7 @@ }, /obj/machinery/door/firedoor/border_only, /turf/open/floor/plasteel/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "FD" = ( /obj/machinery/cryopod{ dir = 1 @@ -1876,7 +1873,7 @@ /area/ship/crew/canteen) "FN" = ( /turf/closed/wall, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "FR" = ( /obj/structure/cable{ icon_state = "1-8" @@ -1970,7 +1967,7 @@ /obj/machinery/light/directional/west, /obj/machinery/newscaster/directional/north, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "HD" = ( /obj/machinery/power/terminal{ dir = 8 @@ -2030,7 +2027,7 @@ dir = 8 }, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "IQ" = ( /obj/machinery/hydroponics/constructable{ layer = 2 @@ -2105,7 +2102,7 @@ pixel_y = 7 }, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Kl" = ( /obj/effect/turf_decal/box, /obj/machinery/vending/hydronutrients, @@ -2137,7 +2134,7 @@ /obj/item/table_bell, /obj/item/reagent_containers/food/condiment/enzyme, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Lg" = ( /obj/machinery/door/airlock/external{ dir = 4 @@ -2146,7 +2143,7 @@ /area/ship/crew/canteen) "Lj" = ( /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "LI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -2170,13 +2167,13 @@ dir = 1 }, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Mp" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 8 }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Ng" = ( /obj/machinery/vending/wardrobe/bar_wardrobe, /obj/effect/turf_decal/corner/transparent/neutral{ @@ -2186,7 +2183,7 @@ dir = 1 }, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Nr" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 6 @@ -2217,7 +2214,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "NM" = ( /turf/open/floor/plasteel/mono/dark, /area/ship/crew/canteen) @@ -2238,7 +2235,7 @@ "Of" = ( /obj/effect/turf_decal/number/five, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "OI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -2259,28 +2256,7 @@ dir = 8 }, /turf/open/floor/plasteel/dark, -/area/ship/bridge) -"Pd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/door/airlock/freezer{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/ship/crew) +/area/ship/crew/canteen/kitchen) "Qc" = ( /obj/structure/table/reinforced, /obj/effect/spawner/lootdrop/ration, @@ -2288,7 +2264,7 @@ icon_state = "4-8" }, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Qm" = ( /obj/machinery/door/window/eastright, /obj/structure/extinguisher_cabinet/directional/north, @@ -2303,7 +2279,7 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Qu" = ( /obj/machinery/atmospherics/components/binary/pump/on/layer2{ name = "Air to Distro"; @@ -2363,7 +2339,7 @@ icon_state = "2-8" }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "RU" = ( /obj/structure/bed, /obj/item/bedsheet/dorms, @@ -2389,7 +2365,7 @@ /area/ship/crew/canteen) "Sf" = ( /turf/open/floor/plasteel/mono, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Si" = ( /obj/structure/reagent_dispensers/cooking_oil, /obj/structure/cable{ @@ -2411,7 +2387,7 @@ icon_state = "2-4" }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Ss" = ( /obj/machinery/door/airlock, /turf/open/floor/plasteel/patterned, @@ -2469,7 +2445,7 @@ port_direction = 4 }, /turf/open/floor/plating/airless, -/area/ship/external) +/area/ship/external/dark) "To" = ( /obj/item/radio, /obj/item/radio, @@ -2546,7 +2522,7 @@ /obj/effect/turf_decal/box, /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Uq" = ( /obj/machinery/power/shuttle/engine/fueled/plasma{ dir = 4 @@ -2658,7 +2634,7 @@ dir = 4 }, /turf/open/floor/plasteel/mono/white, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Wf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, /turf/open/floor/carpet/red_gold, @@ -2821,7 +2797,7 @@ }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Zm" = ( /obj/machinery/door/airlock{ dir = 4 @@ -2839,7 +2815,7 @@ dir = 8 }, /turf/open/floor/plasteel/dark, -/area/ship/bridge) +/area/ship/crew/canteen/kitchen) "Zn" = ( /obj/machinery/hydroponics/constructable, /obj/effect/turf_decal/corner/transparent/neutral{ @@ -2936,7 +2912,7 @@ Df Df Uq Uq -nZ +dV hl IC hA @@ -3209,9 +3185,9 @@ UI sg zu sg -Pd -uR -JR +dZ +sg +Au vZ "} (17,1,1) = {" diff --git a/_maps/templates/holodeck_animeschool.dmm b/_maps/templates/holodeck_animeschool.dmm deleted file mode 100644 index 05c9b1ad3d54..000000000000 --- a/_maps/templates/holodeck_animeschool.dmm +++ /dev/null @@ -1,177 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor, -/area/template_noop) -"j" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"n" = ( -/obj/structure/table, -/obj/item/paper, -/obj/item/pen, -/obj/item/clothing/under/costume/schoolgirl, -/obj/item/toy/katana, -/turf/open/floor/holofloor, -/area/template_noop) -"s" = ( -/obj/structure/table/wood, -/obj/item/toy/crayon/white, -/turf/open/floor/holofloor, -/area/template_noop) -"x" = ( -/obj/structure/table, -/obj/item/paper, -/obj/item/pen, -/obj/item/clothing/under/costume/schoolgirl/orange, -/turf/open/floor/holofloor, -/area/template_noop) -"E" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/grown/apple, -/turf/open/floor/holofloor, -/area/template_noop) -"H" = ( -/obj/structure/table, -/obj/item/paper, -/obj/item/pen, -/obj/item/clothing/under/costume/schoolgirl, -/turf/open/floor/holofloor, -/area/template_noop) -"R" = ( -/obj/structure/chair{ - pixel_y = -2 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"S" = ( -/obj/structure/table, -/obj/item/paper, -/obj/item/pen, -/obj/item/clothing/under/costume/schoolgirl/green, -/turf/open/floor/holofloor, -/area/template_noop) -"T" = ( -/obj/structure/table, -/obj/item/paper, -/obj/item/pen, -/obj/item/clothing/under/costume/schoolgirl/red, -/turf/open/floor/holofloor, -/area/template_noop) -"Y" = ( -/obj/structure/table/wood, -/obj/item/folder, -/obj/item/melee/classic_baton/telescopic, -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -S -j -n -j -H -j -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -Y -a -H -j -x -j -T -j -a -"} -(5,1,1) = {" -R -s -a -a -a -a -a -a -a -a -"} -(6,1,1) = {" -a -E -a -S -j -T -j -H -j -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -S -j -S -j -x -j -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_anthophillia.dmm b/_maps/templates/holodeck_anthophillia.dmm deleted file mode 100644 index c50ff32ebced..000000000000 --- a/_maps/templates/holodeck_anthophillia.dmm +++ /dev/null @@ -1,130 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/effect/holodeck_effect/mobspawner/bee, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"v" = ( -/obj/effect/holodeck_effect/mobspawner/bee, -/obj/effect/decal/remains/human, -/obj/item/clothing/suit/beekeeper_suit, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"U" = ( -/obj/effect/holodeck_effect/mobspawner/bee, -/obj/item/clothing/head/beekeeper_head, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"W" = ( -/obj/effect/holodeck_effect/mobspawner/bee, -/obj/item/melee/flyswatter, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(5,1,1) = {" -a -a -a -a -U -v -a -a -a -a -"} -(6,1,1) = {" -a -a -a -a -a -W -a -a -a -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_basketball.dmm b/_maps/templates/holodeck_basketball.dmm deleted file mode 100644 index 31bd5f081354..000000000000 --- a/_maps/templates/holodeck_basketball.dmm +++ /dev/null @@ -1,389 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/table, -/turf/open/floor/holofloor, -/area/template_noop) -"b" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/structure/holohoop{ - dir = 1; - layer = 4.1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"c" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"e" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"f" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"h" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"i" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"j" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red, -/turf/open/floor/holofloor, -/area/template_noop) -"k" = ( -/obj/structure/holohoop{ - layer = 3.9 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"l" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"m" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/turf/open/floor/holofloor, -/area/template_noop) -"n" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"q" = ( -/obj/structure/table, -/obj/item/storage/box/cups, -/turf/open/floor/holofloor, -/area/template_noop) -"r" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"s" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"u" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"w" = ( -/turf/open/floor/holofloor, -/area/template_noop) -"x" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"y" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"B" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"E" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"F" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"J" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/item/toy/beach_ball/holoball, -/turf/open/floor/holofloor, -/area/template_noop) -"L" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"M" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red, -/turf/open/floor/holofloor, -/area/template_noop) -"R" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"T" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"U" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"V" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"W" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"Y" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"Z" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -a -s -s -w -s -s -w -s -s -a -"} -(2,1,1) = {" -q -s -s -w -s -s -w -s -s -q -"} -(3,1,1) = {" -y -r -r -r -j -h -e -e -e -F -"} -(4,1,1) = {" -n -L -l -w -x -R -w -Y -B -Z -"} -(5,1,1) = {" -k -w -l -w -x -J -w -f -w -b -"} -(6,1,1) = {" -M -m -l -w -x -R -w -f -V -c -"} -(7,1,1) = {" -i -u -u -u -U -W -V -V -V -E -"} -(8,1,1) = {" -q -T -T -w -T -T -w -T -T -q -"} -(9,1,1) = {" -a -T -T -w -T -T -w -T -T -a -"} diff --git a/_maps/templates/holodeck_beach.dmm b/_maps/templates/holodeck_beach.dmm deleted file mode 100644 index f410142ea646..000000000000 --- a/_maps/templates/holodeck_beach.dmm +++ /dev/null @@ -1,173 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/beach/water, -/area/template_noop) -"f" = ( -/obj/item/shovel/spade, -/turf/open/floor/holofloor/beach/coast_t, -/area/template_noop) -"g" = ( -/obj/item/toy/beach_ball, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"h" = ( -/obj/item/clothing/under/color/rainbow, -/obj/item/clothing/glasses/sunglasses, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"k" = ( -/turf/open/floor/holofloor/beach/coast_b, -/area/template_noop) -"q" = ( -/obj/item/reagent_containers/glass/bucket, -/turf/open/floor/holofloor/beach/coast_t, -/area/template_noop) -"t" = ( -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"H" = ( -/obj/effect/holodeck_effect/mobspawner/monkey, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"J" = ( -/turf/open/floor/holofloor/beach/coast_t, -/area/template_noop) -"M" = ( -/obj/item/toy/seashell, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"Q" = ( -/mob/living/simple_animal/crab{ - name = "Jon" - }, -/turf/open/floor/holofloor/beach/coast_t, -/area/template_noop) -"R" = ( -/turf/open/floor/holofloor/beach, -/area/template_noop) -"S" = ( -/obj/structure/fluff/beach_umbrella/cap, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"T" = ( -/obj/effect/overlay/palmtree_l, -/obj/effect/overlay/coconut, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"W" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/holofloor/beach, -/area/template_noop) -"X" = ( -/obj/effect/overlay/palmtree_r, -/turf/open/floor/holofloor/beach, -/area/template_noop) - -(1,1,1) = {" -R -R -R -R -R -R -R -J -k -a -"} -(2,1,1) = {" -R -R -R -X -R -S -R -Q -k -a -"} -(3,1,1) = {" -X -H -R -R -R -t -t -J -k -a -"} -(4,1,1) = {" -R -R -R -R -h -R -R -J -k -a -"} -(5,1,1) = {" -R -R -W -R -R -t -t -J -k -a -"} -(6,1,1) = {" -R -R -R -R -X -g -R -q -k -a -"} -(7,1,1) = {" -R -T -H -R -R -R -R -f -k -a -"} -(8,1,1) = {" -W -R -R -R -H -R -M -J -k -a -"} -(9,1,1) = {" -R -R -R -R -R -R -R -J -k -a -"} diff --git a/_maps/templates/holodeck_burntest.dmm b/_maps/templates/holodeck_burntest.dmm deleted file mode 100644 index 4c7affa23f62..000000000000 --- a/_maps/templates/holodeck_burntest.dmm +++ /dev/null @@ -1,117 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating/burnmix, -/area/template_noop) -"l" = ( -/obj/effect/holodeck_effect/sparks, -/turf/open/floor/holofloor/plating/burnmix, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -l -l -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -l -a -a -a -a -a -a -l -a -"} -(5,1,1) = {" -a -a -a -l -a -a -l -a -a -a -"} -(6,1,1) = {" -a -l -a -a -a -a -a -a -l -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -l -l -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_chapelcourt.dmm b/_maps/templates/holodeck_chapelcourt.dmm deleted file mode 100644 index 7edf26e85929..000000000000 --- a/_maps/templates/holodeck_chapelcourt.dmm +++ /dev/null @@ -1,465 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/closet/secure_closet/courtroom, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"b" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/grown/harebell, -/obj/item/reagent_containers/food/snacks/grown/harebell, -/obj/item/reagent_containers/food/snacks/grown/harebell, -/obj/item/reagent_containers/food/snacks/grown/harebell, -/obj/item/reagent_containers/food/snacks/grown/harebell, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"c" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor/chapel/bottom_left, -/area/template_noop) -"d" = ( -/obj/structure/table/wood/fancy, -/obj/item/clothing/suit/chaplainsuit/nun, -/obj/item/clothing/head/nun_hood, -/obj/item/clothing/suit/chaplainsuit/holidaypriest, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"f" = ( -/turf/open/floor/holofloor/dark, -/area/template_noop) -"g" = ( -/turf/open/floor/holofloor/chapel/top_left, -/area/template_noop) -"h" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/obj/item/reagent_containers/food/snacks/grown/poppy, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"i" = ( -/turf/open/floor/holofloor/chapel/bottom_right, -/area/template_noop) -"k" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor/chapel/top_right, -/area/template_noop) -"l" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/folder/blue, -/obj/item/pen/red, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"m" = ( -/obj/item/clothing/head/helmet/chaplain/witchunter_hat, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood/fancy, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"o" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/storage/fancy/candle_box, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"p" = ( -/obj/structure/table/wood, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"q" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/folder/red, -/obj/item/pen/red, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"r" = ( -/obj/item/gavelblock, -/obj/item/gavelhammer, -/obj/structure/table/wood, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"s" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"u" = ( -/obj/structure/table/wood/fancy, -/obj/item/storage/book/bible, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"w" = ( -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"x" = ( -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"y" = ( -/obj/item/toy/figure/chaplain, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood/fancy, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"A" = ( -/turf/open/floor/holofloor/chapel/bottom_left, -/area/template_noop) -"C" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor/chapel, -/area/template_noop) -"E" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor/chapel/bottom_right, -/area/template_noop) -"F" = ( -/obj/item/clothing/suit/judgerobe, -/obj/item/clothing/head/powdered_wig, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood/fancy, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"H" = ( -/obj/structure/table/wood/fancy, -/obj/item/book/manual/wiki/security_space_law, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"I" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"K" = ( -/turf/open/floor/holofloor/chapel/top_right, -/area/template_noop) -"L" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"N" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"O" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/paper_bin, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"Q" = ( -/obj/structure/chair, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"S" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"T" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor/chapel/top_left, -/area/template_noop) -"U" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood, -/obj/item/hand_labeler, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"W" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"X" = ( -/obj/item/clothing/suit/chaplainsuit/bishoprobe, -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/obj/structure/table/wood/fancy, -/turf/open/floor/holofloor/dark, -/area/template_noop) - -(1,1,1) = {" -x -g -A -g -c -T -A -L -L -a -"} -(2,1,1) = {" -y -K -i -K -C -k -i -L -L -O -"} -(3,1,1) = {" -F -I -N -g -c -T -A -L -L -q -"} -(4,1,1) = {" -d -f -p -K -C -k -i -L -L -l -"} -(5,1,1) = {" -u -Q -r -S -S -S -S -s -s -h -"} -(6,1,1) = {" -H -f -p -g -c -T -A -L -L -b -"} -(7,1,1) = {" -m -w -W -K -E -k -i -L -L -o -"} -(8,1,1) = {" -X -g -A -g -c -T -A -L -L -U -"} -(9,1,1) = {" -x -K -i -K -E -k -i -L -L -a -"} diff --git a/_maps/templates/holodeck_dodgeball.dmm b/_maps/templates/holodeck_dodgeball.dmm deleted file mode 100644 index ec1e4fbe4dd1..000000000000 --- a/_maps/templates/holodeck_dodgeball.dmm +++ /dev/null @@ -1,297 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"b" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/item/toy/beach_ball/holoball/dodgeball, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"c" = ( -/obj/structure/window, -/obj/item/toy/beach_ball/holoball/dodgeball, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"f" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"h" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"n" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"o" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"p" = ( -/obj/structure/window, -/obj/item/toy/beach_ball/holoball/dodgeball, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"q" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/item/toy/beach_ball/holoball/dodgeball, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"t" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red, -/turf/open/floor/holofloor, -/area/template_noop) -"y" = ( -/obj/structure/window, -/obj/item/toy/beach_ball/holoball/dodgeball, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"C" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"F" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"G" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"J" = ( -/obj/machinery/readybutton, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"K" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"V" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/item/toy/beach_ball/holoball/dodgeball, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"W" = ( -/obj/machinery/readybutton, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"X" = ( -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -W -G -G -G -b -p -F -F -F -a -"} -(2,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(3,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(4,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(5,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(6,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(7,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(8,1,1) = {" -f -X -t -X -V -y -X -C -X -n -"} -(9,1,1) = {" -o -K -K -K -q -c -h -h -h -J -"} diff --git a/_maps/templates/holodeck_emptycourt.dmm b/_maps/templates/holodeck_emptycourt.dmm deleted file mode 100644 index 8b9b86fa0345..000000000000 --- a/_maps/templates/holodeck_emptycourt.dmm +++ /dev/null @@ -1,203 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"e" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"h" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"j" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"s" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"y" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"D" = ( -/turf/open/floor/holofloor, -/area/template_noop) -"E" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"F" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"L" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"X" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -X -L -L -L -L -y -y -y -y -a -"} -(2,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(3,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(4,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(5,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(6,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(7,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(8,1,1) = {" -e -D -D -D -D -D -D -D -D -h -"} -(9,1,1) = {" -j -F -F -F -F -E -E -E -E -s -"} diff --git a/_maps/templates/holodeck_firingrange.dmm b/_maps/templates/holodeck_firingrange.dmm deleted file mode 100644 index a57386442fc4..000000000000 --- a/_maps/templates/holodeck_firingrange.dmm +++ /dev/null @@ -1,345 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"b" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/turf/open/floor/holofloor, -/area/template_noop) -"c" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"j" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"k" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"n" = ( -/obj/item/target, -/obj/item/target/clown, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"o" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"s" = ( -/obj/item/target, -/obj/item/target/syndicate, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"t" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"y" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/holofloor{ - dir = 8; - icon_state = "white" - }, -/area/template_noop) -"z" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"E" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/item/training_toolbox{ - pixel_y = 4 - }, -/obj/item/training_toolbox, -/turf/open/floor/holofloor, -/area/template_noop) -"F" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/holofloor{ - dir = 10; - icon_state = "white" - }, -/area/template_noop) -"G" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"H" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"J" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"K" = ( -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"L" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"N" = ( -/obj/structure/rack, -/obj/item/gun/energy/laser/practice, -/obj/item/clothing/ears/earmuffs, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/turf/open/floor/holofloor, -/area/template_noop) -"P" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"Q" = ( -/turf/open/floor/holofloor, -/area/template_noop) -"S" = ( -/obj/structure/training_machine, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"T" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"U" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Y" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Z" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -J -J -J -J -J -J -J -J -J -a -"} -(2,1,1) = {" -Q -Q -Q -Q -Q -Q -Q -Q -Q -o -"} -(3,1,1) = {" -b -b -b -b -b -b -b -b -T -n -"} -(4,1,1) = {" -k -y -F -L -L -L -L -G -Z -N -"} -(5,1,1) = {" -Y -S -K -Q -Q -Q -Q -Q -Z -N -"} -(6,1,1) = {" -t -U -U -c -c -c -c -E -Z -N -"} -(7,1,1) = {" -P -P -P -P -P -P -P -P -z -s -"} -(8,1,1) = {" -Q -Q -Q -Q -Q -Q -Q -Q -Q -o -"} -(9,1,1) = {" -H -H -H -H -H -H -H -H -H -j -"} diff --git a/_maps/templates/holodeck_gamer.dmm b/_maps/templates/holodeck_gamer.dmm deleted file mode 100644 index 570992d24379..000000000000 --- a/_maps/templates/holodeck_gamer.dmm +++ /dev/null @@ -1,129 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"d" = ( -/obj/machinery/computer/arcade/battle, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"x" = ( -/obj/machinery/computer/arcade, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"C" = ( -/obj/machinery/computer/arcade/orion_trail, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"D" = ( -/obj/machinery/computer/arcade/amputation, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"I" = ( -/turf/open/floor/holofloor/basalt, -/area/template_noop) - -(1,1,1) = {" -I -I -I -I -I -I -I -I -I -I -"} -(2,1,1) = {" -I -I -I -x -I -I -x -I -I -I -"} -(3,1,1) = {" -I -I -I -D -I -I -D -I -I -I -"} -(4,1,1) = {" -I -I -I -I -I -I -I -I -I -I -"} -(5,1,1) = {" -I -I -I -I -I -I -I -I -I -I -"} -(6,1,1) = {" -I -I -I -I -I -I -I -I -I -I -"} -(7,1,1) = {" -I -I -I -d -I -I -d -I -I -I -"} -(8,1,1) = {" -I -I -I -C -I -I -C -I -I -I -"} -(9,1,1) = {" -I -I -I -I -I -I -I -I -I -I -"} diff --git a/_maps/templates/holodeck_holdoutbunker.dmm b/_maps/templates/holodeck_holdoutbunker.dmm deleted file mode 100644 index 39e68f17ee52..000000000000 --- a/_maps/templates/holodeck_holdoutbunker.dmm +++ /dev/null @@ -1,164 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/foamedmetal, -/obj/structure/window{ - dir = 8 - }, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"b" = ( -/obj/structure/foamedmetal, -/obj/structure/window{ - dir = 4 - }, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"l" = ( -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"t" = ( -/obj/structure/foamedmetal, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"u" = ( -/obj/structure/table, -/obj/machinery/recharger, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"v" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment{ - heal_burn = 10 - }, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"x" = ( -/obj/structure/foamedmetal, -/obj/structure/window{ - dir = 4 - }, -/obj/structure/bookcase/random/fiction, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"I" = ( -/obj/structure/table, -/obj/item/gun/energy/laser, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"J" = ( -/obj/structure/table, -/obj/item/stack/medical/bruise_pack{ - heal_brute = 10 - }, -/obj/item/soap, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -b -x -b -b -b -b -b -b -b -b -"} -(3,1,1) = {" -t -t -t -t -t -t -t -t -t -t -"} -(4,1,1) = {" -l -l -l -l -l -l -l -l -l -l -"} -(5,1,1) = {" -l -l -l -l -l -l -l -l -l -l -"} -(6,1,1) = {" -l -l -l -l -l -l -l -l -l -l -"} -(7,1,1) = {" -l -l -l -l -l -l -l -l -l -l -"} -(8,1,1) = {" -l -l -l -l -l -l -l -l -l -l -"} -(9,1,1) = {" -v -u -I -l -I -I -l -I -u -J -"} diff --git a/_maps/templates/holodeck_kobayashi.dmm b/_maps/templates/holodeck_kobayashi.dmm deleted file mode 100644 index c58dae60ebda..000000000000 --- a/_maps/templates/holodeck_kobayashi.dmm +++ /dev/null @@ -1,362 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating, -/area/template_noop) -"c" = ( -/obj/machinery/button/massdriver/indestructible{ - id = "trektorpedo1"; - layer = 3.9; - name = "photon torpedo button"; - pixel_x = -16; - pixel_y = -5 - }, -/obj/machinery/button/massdriver/indestructible{ - id = "trektorpedo2"; - layer = 3.9; - name = "photon torpedo button"; - pixel_x = 16; - pixel_y = -5 - }, -/obj/machinery/computer/arcade/orion_trail/kobayashi, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"d" = ( -/obj/machinery/computer/station_alert{ - dir = 8 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"f" = ( -/obj/machinery/door/window/westleft{ - dir = 2 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"j" = ( -/obj/structure/chair/office{ - dir = 1 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"k" = ( -/obj/structure/chair/office{ - dir = 8 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"l" = ( -/obj/structure/window/reinforced, -/obj/machinery/computer/station_alert{ - dir = 4 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"m" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"o" = ( -/obj/structure/chair/comfy/beige{ - dir = 1 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"p" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/computer/arcade/orion_trail/kobayashi, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"r" = ( -/obj/structure/table, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"s" = ( -/obj/effect/turf_decal/corner/transparent/neutral, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"t" = ( -/obj/structure/table/glass, -/obj/item/gun/energy/e_gun/mini/practice_phaser, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/recharger, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"w" = ( -/obj/structure/table, -/obj/item/folder, -/obj/item/pen/blue, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"x" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/machinery/computer/arcade/orion_trail/kobayashi, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"y" = ( -/turf/open/floor/holofloor/hyperspace, -/area/template_noop) -"z" = ( -/obj/machinery/computer/atmos_alert{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"A" = ( -/obj/structure/window/reinforced, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"B" = ( -/obj/structure/window/reinforced, -/turf/open/floor/holofloor/hyperspace, -/area/template_noop) -"C" = ( -/obj/machinery/computer/station_alert{ - dir = 4 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"E" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"F" = ( -/obj/structure/rack, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"H" = ( -/obj/machinery/door/window/westleft{ - dir = 2; - icon_state = "right" - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"J" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"L" = ( -/obj/structure/table/glass, -/obj/item/gun/energy/e_gun/mini/practice_phaser, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"Q" = ( -/obj/structure/table, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/item/folder, -/obj/item/pen/red, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"T" = ( -/obj/structure/rack, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"V" = ( -/obj/structure/window/reinforced, -/obj/machinery/mass_driver{ - dir = 1; - id = "trektorpedo2"; - name = "photon torpedo tube" - }, -/obj/item/toy/minimeteor{ - desc = "A primitive long-range weapon, inferior to Nanotrasen's perfected bluespace artillery."; - icon = 'icons/effects/effects.dmi'; - icon_state = "impact_laser"; - name = "photon torpedo" - }, -/turf/open/floor/holofloor/hyperspace, -/area/template_noop) -"X" = ( -/obj/structure/chair/office{ - dir = 4 - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"Z" = ( -/obj/structure/table, -/obj/item/folder, -/obj/item/pen, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -y -y -B -a -C -l -a -a -a -a -"} -(2,1,1) = {" -y -y -B -a -k -k -a -a -a -a -"} -(3,1,1) = {" -y -V -t -a -a -a -a -H -m -T -"} -(4,1,1) = {" -B -p -a -a -a -a -A -w -E -s -"} -(5,1,1) = {" -B -c -j -a -a -o -A -Z -E -s -"} -(6,1,1) = {" -B -x -a -a -a -r -A -Q -E -s -"} -(7,1,1) = {" -y -V -L -a -a -a -a -f -J -F -"} -(8,1,1) = {" -y -y -B -a -X -X -a -a -a -a -"} -(9,1,1) = {" -y -y -B -a -d -z -a -a -a -a -"} diff --git a/_maps/templates/holodeck_lounge.dmm b/_maps/templates/holodeck_lounge.dmm deleted file mode 100644 index ecf82f53a424..000000000000 --- a/_maps/templates/holodeck_lounge.dmm +++ /dev/null @@ -1,418 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/glass/rag{ - pixel_x = 10; - pixel_y = 1 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"b" = ( -/obj/structure/closet/crate/bin, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"c" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 4; - icon_state = "right"; - layer = 3 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"d" = ( -/obj/structure/table/wood, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"f" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - layer = 3.3 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"h" = ( -/obj/structure/table/wood, -/obj/item/clothing/mask/cigarette/pipe, -/obj/item/book/manual/random, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"i" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/drinks/shaker, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"j" = ( -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"k" = ( -/obj/structure/table/wood/poker, -/obj/item/storage/box/matches, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"l" = ( -/obj/structure/chair/stool/bar, -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"m" = ( -/obj/structure/chair/wood, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"o" = ( -/obj/structure/chair/wood{ - dir = 1 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"p" = ( -/obj/structure/table/wood, -/obj/item/instrument/guitar, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"q" = ( -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"t" = ( -/obj/structure/table/wood, -/obj/item/book/manual/wiki/barman_recipes, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"u" = ( -/obj/structure/chair/wood{ - dir = 4 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"w" = ( -/obj/structure/table/wood, -/obj/item/instrument/saxophone, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"x" = ( -/obj/structure/table/wood, -/obj/item/instrument/violin, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"z" = ( -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"A" = ( -/obj/structure/table/wood, -/obj/item/paper_bin, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"C" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"D" = ( -/obj/structure/table/wood, -/obj/item/kirbyplants{ - icon_state = "plant-05"; - pixel_y = 10 - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"E" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"F" = ( -/turf/open/floor/holofloor{ - icon_state = "stairs-r" - }, -/area/template_noop) -"G" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/table/wood, -/obj/item/storage/box/cups, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"H" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = -12 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"I" = ( -/obj/structure/chair/wood{ - dir = 8 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"J" = ( -/obj/structure/table/wood, -/obj/item/book/manual/random, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"K" = ( -/obj/structure/table/wood, -/obj/item/storage/fancy/cigarettes/cigars/cohiba, -/obj/item/lighter, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"L" = ( -/turf/open/floor/holofloor{ - icon_state = "stairs-l" - }, -/area/template_noop) -"M" = ( -/obj/structure/chair/comfy/brown{ - buildstackamount = 0; - dir = 1 - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"N" = ( -/obj/structure/table/wood, -/obj/item/instrument/piano_synth/headphones, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"O" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - pixel_y = 4 - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"P" = ( -/obj/structure/table/wood/poker, -/obj/effect/holodeck_effect/cards, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"R" = ( -/obj/structure/window/reinforced, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"S" = ( -/obj/structure/table/wood/poker, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"T" = ( -/obj/structure/table/wood/poker, -/obj/item/clothing/mask/cigarette/pipe, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"U" = ( -/obj/structure/table/wood/poker, -/obj/item/storage/pill_bottle/dice, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"V" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"Y" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4; - layer = 2.9 - }, -/turf/open/floor/holofloor{ - dir = 9; - icon_state = "wood" - }, -/area/template_noop) -"Z" = ( -/obj/structure/musician/piano{ - icon_state = "piano" - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) - -(1,1,1) = {" -K -z -z -z -z -z -V -t -H -a -"} -(2,1,1) = {" -f -z -z -z -z -z -V -d -z -i -"} -(3,1,1) = {" -z -u -u -z -z -j -l -Y -c -G -"} -(4,1,1) = {" -m -S -U -o -R -w -N -Z -q -x -"} -(5,1,1) = {" -m -k -S -o -z -L -q -C -q -p -"} -(6,1,1) = {" -m -P -T -o -z -F -q -q -q -M -"} -(7,1,1) = {" -z -I -I -z -R -J -q -q -q -M -"} -(8,1,1) = {" -b -z -z -z -R -D -q -q -q -M -"} -(9,1,1) = {" -A -z -z -z -R -O -q -E -E -h -"} diff --git a/_maps/templates/holodeck_medicalsim.dmm b/_maps/templates/holodeck_medicalsim.dmm deleted file mode 100644 index 4a7fe27b96a0..000000000000 --- a/_maps/templates/holodeck_medicalsim.dmm +++ /dev/null @@ -1,976 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"ap" = ( -/obj/effect/turf_decal/corner/opaque/yellow, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/obj/structure/table, -/obj/item/reagent_containers/dropper, -/obj/item/assembly/igniter, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"aL" = ( -/obj/structure/table/glass, -/obj/item/clothing/gloves/color/latex/nitrile, -/obj/item/clothing/suit/apron/surgical, -/obj/item/clothing/mask/surgical, -/obj/structure/window{ - dir = 4 - }, -/obj/item/surgicaldrill, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"ba" = ( -/obj/machinery/iv_drip, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"bw" = ( -/obj/effect/turf_decal/corner/opaque/yellow, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 4 - }, -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"cI" = ( -/obj/structure/closet/crate/freezer/blood, -/obj/structure/window{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"cO" = ( -/obj/machinery/stasis, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"cR" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"cT" = ( -/obj/structure/table, -/obj/item/folder/white, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"dx" = ( -/obj/structure/table, -/obj/item/flashlight/lamp, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/structure/window{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"dX" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/structure/table/glass, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/item/storage/box/masks, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"gp" = ( -/obj/structure/window, -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"gr" = ( -/obj/structure/table/glass, -/obj/item/retractor, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"hK" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/item/storage/box/gloves{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"hQ" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/structure/table/glass, -/obj/item/healthanalyzer, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"jr" = ( -/obj/effect/turf_decal/corner/opaque/blue, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"kJ" = ( -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"lU" = ( -/obj/effect/turf_decal/corner/opaque/yellow, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 8 - }, -/obj/structure/table, -/obj/item/storage/box/syringes, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"nj" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"pe" = ( -/obj/structure/window, -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/item/kirbyplants{ - icon_state = "plant-10" - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"pY" = ( -/obj/machinery/computer/operating{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"qw" = ( -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"qV" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"qX" = ( -/obj/structure/bed, -/obj/item/bedsheet/medical, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"tI" = ( -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"uj" = ( -/obj/machinery/chem_master, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"wu" = ( -/obj/structure/filingcabinet, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"wV" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/structure/bed/roller, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"xf" = ( -/obj/structure/table/optable, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"xz" = ( -/obj/structure/closet/wardrobe/white, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"yk" = ( -/obj/structure/window{ - dir = 8 - }, -/obj/machinery/computer/crew{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"zd" = ( -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/structure/table, -/obj/item/paper_bin, -/obj/item/pen, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ac" = ( -/obj/machinery/washing_machine, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"An" = ( -/obj/machinery/computer/operating{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"BI" = ( -/obj/structure/window{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"BS" = ( -/obj/machinery/computer/pandemic, -/obj/effect/turf_decal/corner/opaque/yellow, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"BT" = ( -/obj/structure/bed, -/obj/item/bedsheet/medical, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ck" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ct" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"CQ" = ( -/obj/structure/table, -/obj/item/clothing/neck/stethoscope, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"DT" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"DW" = ( -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ea" = ( -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 8 - }, -/obj/structure/table, -/obj/item/reagent_containers/glass/beaker, -/obj/item/reagent_containers/glass/beaker, -/obj/item/reagent_containers/glass/beaker, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ga" = ( -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"GN" = ( -/obj/machinery/door/window/westleft{ - dir = 2 - }, -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ig" = ( -/obj/machinery/iv_drip, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Ke" = ( -/obj/structure/window, -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"KD" = ( -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Lt" = ( -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"LW" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/item/kirbyplants{ - icon_state = "plant-21" - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"NV" = ( -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"PJ" = ( -/obj/structure/window{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/item/kirbyplants{ - icon_state = "plant-08" - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Qu" = ( -/obj/structure/table/glass, -/obj/item/stack/medical/gauze, -/obj/item/cautery, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"RA" = ( -/obj/structure/window{ - dir = 8 - }, -/obj/machinery/computer/med_data{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"RJ" = ( -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 8 - }, -/obj/structure/table, -/obj/item/reagent_containers/glass/beaker/large, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Sb" = ( -/obj/structure/table/glass, -/obj/item/scalpel{ - pixel_y = 10 - }, -/obj/item/circular_saw, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Sj" = ( -/obj/effect/turf_decal/corner/opaque/yellow, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Tt" = ( -/obj/machinery/stasis, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"TI" = ( -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/green, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/green{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"WK" = ( -/obj/structure/bodycontainer/morgue{ - dir = 2 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Xm" = ( -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 8 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"XM" = ( -/obj/structure/window, -/obj/effect/turf_decal/corner/opaque/blue, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"Zq" = ( -/obj/structure/table/glass, -/obj/item/razor, -/obj/item/hemostat, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 4 - }, -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) - -(1,1,1) = {" -WK -Xm -DT -kJ -Ck -qV -gp -qX -qw -ba -"} -(2,1,1) = {" -Zq -tI -xf -LW -jr -NV -Ke -BT -tI -Tt -"} -(3,1,1) = {" -Sb -tI -pY -dX -jr -NV -Ke -BT -tI -Ig -"} -(4,1,1) = {" -gr -tI -An -hQ -jr -NV -GN -TI -cR -cO -"} -(5,1,1) = {" -Qu -tI -xf -hK -jr -NV -pe -yk -RA -dx -"} -(6,1,1) = {" -cI -BI -aL -wV -jr -NV -Ke -Ga -Ct -cT -"} -(7,1,1) = {" -Ea -RJ -lU -PJ -jr -NV -GN -Ga -Ga -zd -"} -(8,1,1) = {" -uj -tI -Sj -DW -jr -NV -Ke -xz -Ga -CQ -"} -(9,1,1) = {" -ap -bw -BS -nj -Lt -KD -XM -Ac -Ga -wu -"} diff --git a/_maps/templates/holodeck_offline.dmm b/_maps/templates/holodeck_offline.dmm deleted file mode 100644 index 962ba7b16d40..000000000000 --- a/_maps/templates/holodeck_offline.dmm +++ /dev/null @@ -1,113 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(5,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(6,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_petpark.dmm b/_maps/templates/holodeck_petpark.dmm deleted file mode 100644 index 9ff44986d3d6..000000000000 --- a/_maps/templates/holodeck_petpark.dmm +++ /dev/null @@ -1,256 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"b" = ( -/obj/structure/flora/ausbushes/fernybush, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"c" = ( -/obj/machinery/hydroponics/soil, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"f" = ( -/obj/structure/flora/ausbushes/genericbush, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"g" = ( -/obj/effect/holodeck_effect/mobspawner/pet, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"k" = ( -/obj/structure/flora/tree/jungle/small, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"l" = ( -/obj/structure/flora/ausbushes/ppflowers, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"p" = ( -/obj/structure/flora/ausbushes/ywflowers, -/obj/effect/holodeck_effect/mobspawner/pet, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"q" = ( -/obj/machinery/hydroponics/soil, -/obj/effect/holodeck_effect/mobspawner/pet, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"v" = ( -/obj/structure/flora/ausbushes/palebush, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"w" = ( -/obj/effect/holodeck_effect/mobspawner/pet, -/obj/structure/flora/ausbushes/brflowers, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"y" = ( -/obj/structure/flora/ausbushes/pointybush, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"C" = ( -/obj/structure/flora/ausbushes/ywflowers, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"D" = ( -/obj/structure/flora/ausbushes/reedbush, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"G" = ( -/obj/structure/flora/ausbushes/lavendergrass, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"H" = ( -/obj/effect/holodeck_effect/mobspawner/pet, -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"I" = ( -/turf/open/floor/holofloor/grass, -/area/template_noop) -"M" = ( -/obj/structure/flora/ausbushes/sunnybush, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"N" = ( -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"R" = ( -/obj/structure/flora/ausbushes/brflowers, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"S" = ( -/obj/item/trash/plate, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"U" = ( -/obj/machinery/hydroponics/soil, -/obj/item/cultivator, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"V" = ( -/obj/item/shovel/spade{ - pixel_x = 2; - pixel_y = -2 - }, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) -"X" = ( -/obj/item/reagent_containers/glass/bucket, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"Z" = ( -/obj/effect/holodeck_effect/mobspawner/pet, -/obj/effect/turf_decal/corner/opaque/red, -/obj/effect/turf_decal/corner/opaque/red{ - dir = 1 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 8 - }, -/obj/effect/turf_decal/corner/opaque/blue{ - dir = 4 - }, -/turf/open/floor/holofloor, -/area/template_noop) - -(1,1,1) = {" -g -I -I -I -f -I -I -f -I -a -"} -(2,1,1) = {" -I -f -I -v -g -I -v -H -M -I -"} -(3,1,1) = {" -M -g -R -I -k -l -I -c -c -I -"} -(4,1,1) = {" -I -l -M -I -I -G -R -U -q -I -"} -(5,1,1) = {" -y -w -N -Z -D -M -X -q -c -f -"} -(6,1,1) = {" -I -I -S -V -I -p -I -c -c -I -"} -(7,1,1) = {" -I -M -g -v -I -f -C -I -I -v -"} -(8,1,1) = {" -f -C -f -I -I -I -g -I -b -I -"} -(9,1,1) = {" -I -I -I -I -I -R -I -I -I -I -"} diff --git a/_maps/templates/holodeck_photobooth.dmm b/_maps/templates/holodeck_photobooth.dmm deleted file mode 100644 index 64a6bb0f7205..000000000000 --- a/_maps/templates/holodeck_photobooth.dmm +++ /dev/null @@ -1,173 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/white, -/area/template_noop) -"c" = ( -/obj/structure/dresser, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"g" = ( -/obj/structure/easel, -/obj/item/canvas/twentythreeXtwentythree, -/obj/item/canvas/twentythreeXtwentythree, -/obj/item/canvas/twentythreeXtwentythree, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"r" = ( -/obj/structure/table/wood, -/obj/item/paint/anycolor{ - pixel_x = 7 - }, -/obj/item/paint/anycolor{ - pixel_x = -5 - }, -/obj/item/paint/anycolor{ - pixel_x = 7 - }, -/obj/item/paint/anycolor{ - pixel_x = 7 - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"t" = ( -/obj/structure/table/wood, -/obj/item/toy/crayon/spraycan{ - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/toy/crayon/spraycan{ - pixel_x = -5; - pixel_y = 5 - }, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"u" = ( -/obj/structure/table/wood, -/obj/item/paper_bin, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"w" = ( -/obj/structure/table/wood, -/obj/item/camera, -/obj/item/camera, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"H" = ( -/obj/structure/table/wood, -/obj/item/storage/crayons, -/turf/open/floor/holofloor/carpet, -/area/template_noop) -"L" = ( -/obj/structure/falsewall/wood, -/obj/structure/mirror, -/turf/open/floor/holofloor/carpet, -/area/template_noop) - -(1,1,1) = {" -H -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -L -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -u -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -r -a -a -a -a -a -a -a -a -a -"} -(5,1,1) = {" -w -a -a -a -a -a -a -a -a -a -"} -(6,1,1) = {" -t -a -a -a -a -a -a -a -a -a -"} -(7,1,1) = {" -t -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -g -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -c -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_refuelingstation.dmm b/_maps/templates/holodeck_refuelingstation.dmm deleted file mode 100644 index e066ff996229..000000000000 --- a/_maps/templates/holodeck_refuelingstation.dmm +++ /dev/null @@ -1,121 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating, -/area/template_noop) -"j" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"F" = ( -/obj/item/weldingtool, -/turf/open/floor/holofloor/plating, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(4,1,1) = {" -a -j -j -a -j -j -a -j -j -a -"} -(5,1,1) = {" -a -j -j -F -j -j -F -j -j -a -"} -(6,1,1) = {" -a -j -j -a -j -j -a -j -j -a -"} -(7,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(8,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_skatepark.dmm b/_maps/templates/holodeck_skatepark.dmm deleted file mode 100644 index 21388e50a289..000000000000 --- a/_maps/templates/holodeck_skatepark.dmm +++ /dev/null @@ -1,117 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating, -/area/template_noop) -"t" = ( -/obj/structure/table, -/turf/open/floor/holofloor/plating, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -t -t -a -a -a -a -a -a -a -"} -(3,1,1) = {" -a -t -t -t -t -a -t -t -a -a -"} -(4,1,1) = {" -a -a -t -t -t -t -t -a -a -a -"} -(5,1,1) = {" -a -a -t -t -a -t -t -a -a -a -"} -(6,1,1) = {" -a -a -t -t -t -t -a -a -a -a -"} -(7,1,1) = {" -a -t -t -t -t -a -t -t -a -a -"} -(8,1,1) = {" -a -t -a -a -a -a -t -t -a -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_spacecheckers.dmm b/_maps/templates/holodeck_spacecheckers.dmm deleted file mode 100644 index c59da010a2aa..000000000000 --- a/_maps/templates/holodeck_spacecheckers.dmm +++ /dev/null @@ -1,187 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating, -/area/template_noop) -"c" = ( -/obj/item/cardboard_cutout/adaptive{ - icon_state = "cutout_greytide"; - name = "White Pawn" - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) -"d" = ( -/turf/open/floor/holofloor/dark, -/area/template_noop) -"g" = ( -/obj/item/cardboard_cutout/adaptive{ - icon_state = "cutout_clown"; - name = "White King" - }, -/obj/item/cardboard_cutout/adaptive{ - icon_state = "cutout_clown"; - name = "White King" - }, -/obj/item/cardboard_cutout/adaptive{ - icon_state = "cutout_clown"; - name = "White King" - }, -/obj/item/cardboard_cutout/adaptive{ - icon_state = "cutout_clown"; - name = "White King" - }, -/obj/item/cardboard_cutout/adaptive{ - icon_state = "cutout_clown"; - name = "White King" - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"z" = ( -/obj/item/cardboard_cutout/adaptive{ - color = "#9999BB"; - icon_state = "cutout_clown"; - name = "Black King" - }, -/obj/item/cardboard_cutout/adaptive{ - color = "#9999BB"; - icon_state = "cutout_clown"; - name = "Black King" - }, -/obj/item/cardboard_cutout/adaptive{ - color = "#9999BB"; - icon_state = "cutout_clown"; - name = "Black King" - }, -/obj/item/cardboard_cutout/adaptive{ - color = "#9999BB"; - icon_state = "cutout_clown"; - name = "Black King" - }, -/obj/item/cardboard_cutout/adaptive{ - color = "#9999BB"; - icon_state = "cutout_clown"; - name = "Black King" - }, -/turf/open/floor/holofloor/plating, -/area/template_noop) -"J" = ( -/turf/open/floor/holofloor{ - icon_state = "white" - }, -/area/template_noop) -"M" = ( -/obj/item/cardboard_cutout/adaptive{ - color = "#9999BB"; - icon_state = "cutout_greytide"; - name = "Black Pawn" - }, -/turf/open/floor/holofloor/dark, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -J -M -J -d -J -c -J -c -a -"} -(3,1,1) = {" -a -M -J -M -J -d -J -c -J -a -"} -(4,1,1) = {" -a -J -M -J -d -J -c -J -c -a -"} -(5,1,1) = {" -a -M -J -M -J -d -J -c -J -a -"} -(6,1,1) = {" -a -J -M -J -d -J -c -J -c -a -"} -(7,1,1) = {" -a -M -J -M -J -d -J -c -J -a -"} -(8,1,1) = {" -a -J -M -J -d -J -c -J -c -a -"} -(9,1,1) = {" -z -M -J -M -J -d -J -c -J -g -"} diff --git a/_maps/templates/holodeck_thunderdome.dmm b/_maps/templates/holodeck_thunderdome.dmm deleted file mode 100644 index b6c522a3ed44..000000000000 --- a/_maps/templates/holodeck_thunderdome.dmm +++ /dev/null @@ -1,148 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/table, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"c" = ( -/obj/structure/window{ - dir = 1 - }, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"h" = ( -/obj/structure/table, -/obj/item/clothing/head/helmet/thunderdome, -/obj/item/clothing/suit/armor/tdome/green, -/obj/item/clothing/under/color/green, -/obj/item/holo/esword/green, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"q" = ( -/obj/structure/table, -/obj/item/clothing/head/helmet/thunderdome, -/obj/item/clothing/suit/armor/tdome/red, -/obj/item/clothing/under/color/red, -/obj/item/holo/esword/red, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"x" = ( -/obj/structure/window, -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"B" = ( -/turf/open/floor/holofloor/basalt, -/area/template_noop) -"Q" = ( -/obj/structure/table, -/obj/machinery/readybutton, -/turf/open/floor/holofloor/basalt, -/area/template_noop) - -(1,1,1) = {" -Q -B -B -B -x -c -B -B -B -a -"} -(2,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(3,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(4,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(5,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(6,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(7,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(8,1,1) = {" -q -B -B -B -x -c -B -B -B -h -"} -(9,1,1) = {" -a -B -B -B -x -c -B -B -B -Q -"} diff --git a/_maps/templates/holodeck_thunderdome1218.dmm b/_maps/templates/holodeck_thunderdome1218.dmm deleted file mode 100644 index 94556b2bdc7d..000000000000 --- a/_maps/templates/holodeck_thunderdome1218.dmm +++ /dev/null @@ -1,221 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/chair/wood{ - dir = 1 - }, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"f" = ( -/obj/structure/window/reinforced, -/obj/item/banner/red, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"g" = ( -/obj/structure/window/reinforced, -/obj/item/banner/blue, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"k" = ( -/obj/structure/table/wood/fancy, -/obj/item/clothing/suit/armor/riot/knight/blue, -/obj/item/clothing/head/helmet/knight/blue, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"n" = ( -/obj/machinery/door/window/westleft{ - dir = 2 - }, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"p" = ( -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"r" = ( -/obj/structure/table/wood, -/obj/item/scythe, -/obj/item/spear, -/obj/item/melee/chainofcommand{ - name = "chain whip" - }, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"s" = ( -/obj/machinery/door/window/westleft{ - dir = 2; - icon_state = "right" - }, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"x" = ( -/turf/open/floor/holofloor/grass, -/area/template_noop) -"y" = ( -/obj/structure/table/wood, -/obj/item/melee/chainofcommand{ - name = "chain whip" - }, -/obj/item/spear, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"B" = ( -/turf/open/floor/holofloor{ - icon_state = "stairs-old" - }, -/area/template_noop) -"C" = ( -/obj/structure/table/wood/fancy, -/obj/item/clothing/head/crown/fancy{ - pixel_y = 6 - }, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"E" = ( -/obj/structure/window/reinforced, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"H" = ( -/obj/structure/statue/diamond/captain, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"J" = ( -/obj/structure/window/reinforced, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"N" = ( -/obj/structure/table/wood, -/obj/item/spear, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"Q" = ( -/obj/structure/table/wood/fancy, -/obj/item/clothing/suit/armor/riot/knight/blue, -/obj/item/clothing/head/helmet/knight/blue, -/obj/item/claymore/weak, -/turf/open/floor/holofloor/grass, -/area/template_noop) -"R" = ( -/obj/machinery/door/window/westleft{ - dir = 2 - }, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"T" = ( -/obj/structure/table/wood, -/obj/item/spear, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) -"X" = ( -/obj/structure/table/wood, -/obj/item/scythe, -/obj/item/spear, -/turf/open/floor/holofloor/asteroid, -/area/template_noop) - -(1,1,1) = {" -H -J -N -p -p -p -p -g -x -a -"} -(2,1,1) = {" -x -J -r -p -p -p -p -E -x -a -"} -(3,1,1) = {" -k -s -B -p -p -p -p -E -x -a -"} -(4,1,1) = {" -Q -J -y -p -p -p -p -R -x -a -"} -(5,1,1) = {" -C -J -X -p -p -p -p -E -x -a -"} -(6,1,1) = {" -Q -J -T -p -p -p -p -R -x -a -"} -(7,1,1) = {" -k -n -B -p -p -p -p -E -x -a -"} -(8,1,1) = {" -x -J -y -p -p -p -p -E -x -a -"} -(9,1,1) = {" -H -J -T -p -p -p -p -f -x -a -"} diff --git a/_maps/templates/holodeck_wildlifesim.dmm b/_maps/templates/holodeck_wildlifesim.dmm deleted file mode 100644 index cc01ef83518e..000000000000 --- a/_maps/templates/holodeck_wildlifesim.dmm +++ /dev/null @@ -1,117 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/floor/holofloor/plating, -/area/template_noop) -"H" = ( -/obj/effect/holodeck_effect/mobspawner, -/turf/open/floor/holofloor/plating, -/area/template_noop) - -(1,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -a -H -a -a -a -a -a -H -a -"} -(3,1,1) = {" -a -a -a -a -H -a -a -a -a -a -"} -(4,1,1) = {" -a -a -H -a -a -a -a -a -H -a -"} -(5,1,1) = {" -a -a -a -a -a -H -H -a -a -a -"} -(6,1,1) = {" -a -a -H -a -a -a -a -a -H -a -"} -(7,1,1) = {" -a -a -a -a -H -a -a -a -a -a -"} -(8,1,1) = {" -a -a -H -a -a -a -a -a -H -a -"} -(9,1,1) = {" -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/templates/holodeck_winterwonderland.dmm b/_maps/templates/holodeck_winterwonderland.dmm deleted file mode 100644 index f072ddd9b278..000000000000 --- a/_maps/templates/holodeck_winterwonderland.dmm +++ /dev/null @@ -1,247 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/obj/structure/flora/grass/both, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"c" = ( -/obj/structure/flora/bush{ - pixel_x = -2; - pixel_y = 3 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"d" = ( -/obj/structure/flora/tree/pine, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"h" = ( -/obj/structure/flora/tree/pine{ - pixel_y = -6 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"l" = ( -/obj/structure/flora/tree/pine{ - pixel_x = -21 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"m" = ( -/obj/effect/holodeck_effect/mobspawner/penguin, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"n" = ( -/obj/item/stack/sheet/mineral/coal{ - pixel_x = -8; - pixel_y = -4 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"q" = ( -/obj/structure/flora/grass/brown, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"s" = ( -/obj/structure/flora/tree/pine/xmas, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"u" = ( -/obj/item/clothing/gloves/color/green{ - pixel_x = -7; - pixel_y = -7 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"w" = ( -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"A" = ( -/obj/structure/flora/bush, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"D" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"E" = ( -/obj/effect/holodeck_effect/mobspawner/penguin_baby, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"G" = ( -/obj/item/clothing/head/trapper{ - pixel_x = -5; - pixel_y = 6 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"H" = ( -/obj/item/clothing/neck/stripedredscarf{ - pixel_x = -3; - pixel_y = -5 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"L" = ( -/obj/structure/flora/grass/green, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"O" = ( -/obj/structure/flora/bush{ - pixel_x = 5; - pixel_y = 7 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"P" = ( -/obj/item/clothing/head/collectable/tophat{ - pixel_x = 9; - pixel_y = 7 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"Q" = ( -/obj/item/clothing/shoes/winterboots{ - pixel_y = 12 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"R" = ( -/obj/structure/flora/tree/pine{ - pixel_x = -10 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"S" = ( -/obj/item/hatchet/wooden{ - pixel_x = 7; - pixel_y = -8 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"U" = ( -/obj/item/toy/snowball{ - pixel_y = 6 - }, -/obj/item/toy/snowball{ - pixel_x = 5 - }, -/obj/item/toy/snowball{ - pixel_x = -4 - }, -/turf/open/floor/holofloor/snow, -/area/template_noop) -"Z" = ( -/turf/open/floor/holofloor/snow, -/area/template_noop) - -(1,1,1) = {" -L -S -Z -Z -A -Z -Z -Z -Z -a -"} -(2,1,1) = {" -Z -h -Z -Z -Z -Z -Z -Z -l -Z -"} -(3,1,1) = {" -Z -P -U -Z -Z -Z -Z -Z -Z -c -"} -(4,1,1) = {" -H -D -Z -Z -Z -Z -Z -Z -m -Z -"} -(5,1,1) = {" -A -n -Z -Z -Z -s -E -Z -w -Q -"} -(6,1,1) = {" -Z -Z -m -Z -Z -Z -Z -U -u -G -"} -(7,1,1) = {" -Z -Z -d -O -Z -Z -Z -Z -Z -Z -"} -(8,1,1) = {" -Z -Z -Z -Z -Z -Z -Z -Z -Z -R -"} -(9,1,1) = {" -Z -a -Z -Z -Z -L -Z -Z -Z -q -"} diff --git a/code/__DEFINES/factions.dm b/code/__DEFINES/factions.dm index a6fbc5c87546..5eb0209dda4c 100644 --- a/code/__DEFINES/factions.dm +++ b/code/__DEFINES/factions.dm @@ -1,6 +1,14 @@ //"Antag" factions // anything with these factions should be hostile to the average player. #define FACTION_ANTAG_SYNDICATE "Syndicate" +#define FACTION_ANTAG_FRONTIERSMEN "Frontiersmen" //Player Factions #define FACTION_PLAYER_SYNDICATE "playerSyndicate" +#define FACTION_PLAYER_NANOTRASEN "playerNanotrasen" +#define FACTION_PLAYER_FRONTIERSMEN "playerFrontiersmen" +#define FACTION_PLAYER_MINUTEMAN "playerMinuteman" +#define FACTION_PLAYER_SOLGOV "playerSolgov" +#define FACTION_PLAYER_INTEQ "playerInteq" +#define FACTION_PLAYER_ROUMAIN "playerRoumain" +#define FACTION_PLAYER_GEZENA "playerGezena" diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index 8fd5d549c086..c0a4d30aba8b 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -224,8 +224,6 @@ GLOBAL_LIST_INIT(glass_sheet_types, typecacheof(list( #define iseffect(O) (istype(O, /obj/effect)) -#define isholoeffect(O) (istype(O, /obj/effect/holodeck_effect)) - #define isblobmonster(O) (istype(O, /mob/living/simple_animal/hostile/blob)) #define isshuttleturf(T) (length(T.baseturfs) && (/turf/baseturf_skipover/shuttle in T.baseturfs)) diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 9dbe4fae64e9..0f2f39ee0240 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -470,11 +470,6 @@ GLOBAL_LIST_INIT(ghost_others_options, list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE /// Possible value of [/atom/movable/buckle_lying]. If set to a different (positive-or-zero) value than this, the buckling thing will force a lying angle on the buckled. #define NO_BUCKLE_LYING -1 -#define STATION_HOLODECK (1<<0) -#define CUSTOM_HOLODECK_ONE (1<<1) -#define CUSTOM_HOLODECK_TWO (1<<2) -#define HOLODECK_DEBUG (1<<3)//you should never see this - #define ROUND_END_NOT_DELAYED 0 #define ROUND_END_DELAYED 1 #define ROUND_END_TGS 2 diff --git a/code/__DEFINES/tgs.dm b/code/__DEFINES/tgs.dm index c561a64ebf58..fdfec5e8ca08 100644 --- a/code/__DEFINES/tgs.dm +++ b/code/__DEFINES/tgs.dm @@ -1,6 +1,6 @@ // tgstation-server DMAPI -#define TGS_DMAPI_VERSION "7.0.1" +#define TGS_DMAPI_VERSION "7.0.2" // All functions and datums outside this document are subject to change with any version and should not be relied on. @@ -426,6 +426,7 @@ /** * Send a message to connected chats. This function may sleep! + * If TGS is offline when called, the message may be placed in a queue to be sent and this function will return immediately. Your message will be sent when TGS reconnects to the game. * * message - The [/datum/tgs_message_content] to send. * admin_only: If [TRUE], message will be sent to admin connected chats. Vice-versa applies. @@ -435,6 +436,7 @@ /** * Send a private message to a specific user. This function may sleep! + * If TGS is offline when called, the message may be placed in a queue to be sent and this function will return immediately. Your message will be sent when TGS reconnects to the game. * * message - The [/datum/tgs_message_content] to send. * user: The [/datum/tgs_chat_user] to PM. @@ -444,6 +446,7 @@ /** * Send a message to connected chats that are flagged as game-related in TGS. This function may sleep! + * If TGS is offline when called, the message may be placed in a queue to be sent and this function will return immediately. Your message will be sent when TGS reconnects to the game. * * message - The [/datum/tgs_message_content] to send. * channels - Optional list of [/datum/tgs_chat_channel]s to restrict the message to. diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index f89cfea14edb..1c605758a2cd 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -350,22 +350,32 @@ GLOBAL_LIST_INIT(binary, list("0","1")) /proc/random_short_color() return num2text(rand(0, 4095), 3, 16) -/proc/short_color_from_seed(seed) - return num2text(seed % 4095, 3, 16) +/proc/color_from_seed(seed) + seed = md5(seed) + + var/red = num2text(hex2num(copytext(seed, 1, 3)), 2, 16) + var/green = num2text(hex2num(copytext(seed, 3, 5)), 2, 16) + var/blue = num2text(hex2num(copytext(seed, 5, 7)), 2, 16) + + return red + green + blue /proc/random_color() return num2text(rand(0, 16777215), 6, 16) /proc/random_color_natural() //For use in natural haircolors. - var red = num2text(rand(0,255), 2, 16) - var green = num2text(rand(0,128), 2, 16) //Conversion to hex - var blue = "00" + var/red = num2text(rand(0,255), 2, 16) + var/green = num2text(rand(0,128), 2, 16) //Conversion to hex + var/blue = "00" + return red + green + blue /proc/color_natural_from_seed(seed) - var red = num2text(seed % 255, 2, 16) - var green = num2text(seed % 128, 2, 16) //Conversion to hex - var blue = "00" + seed = md5(seed) + + var/red = num2text(hex2num(copytext(seed, 1, 3)), 2, 16) + var/green = num2text(hex2num(copytext(seed, 3, 5)) / 2, 2, 16) + var/blue = "00" + return red + green + blue //merges non-null characters (3rd argument) from "from" into "into". Returns result diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index f9c5c9c86399..92b8d146c4fc 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -22,7 +22,6 @@ SUBSYSTEM_DEF(mapping) var/list/shuttle_templates = list() var/list/shelter_templates = list() - var/list/holodeck_templates = list() // List mapping TYPES of outpost map templates to instances of their singletons. var/list/outpost_templates = list() @@ -91,13 +90,11 @@ SUBSYSTEM_DEF(mapping) shuttle_templates = SSmapping.shuttle_templates shelter_templates = SSmapping.shelter_templates - holodeck_templates = SSmapping.holodeck_templates outpost_templates = SSmapping.outpost_templates shuttle_templates = SSmapping.shuttle_templates shelter_templates = SSmapping.shelter_templates - holodeck_templates = SSmapping.holodeck_templates areas_in_z = SSmapping.areas_in_z map_zones = SSmapping.map_zones @@ -127,7 +124,6 @@ SUBSYSTEM_DEF(mapping) preloadShuttleTemplates() load_ship_templates() preloadShelterTemplates() - preloadHolodeckTemplates() preloadOutpostTemplates() /datum/controller/subsystem/mapping/proc/preloadRuinTemplates() @@ -279,16 +275,6 @@ SUBSYSTEM_DEF(mapping) add_new_zlevel("Quadrant Allocation Level", allocation_type = ALLOCATION_QUADRANT) CHECK_TICK -/datum/controller/subsystem/mapping/proc/preloadHolodeckTemplates() - for(var/item in subtypesof(/datum/map_template/holodeck)) - var/datum/map_template/holodeck/holodeck_type = item - if(!(initial(holodeck_type.mappath))) - continue - var/datum/map_template/holodeck/holo_template = new holodeck_type() - - holodeck_templates[holo_template.template_id] = holo_template - map_templates[holo_template.template_id] = holo_template - /datum/controller/subsystem/mapping/proc/preloadOutpostTemplates() for(var/datum/map_template/outpost/outpost_type as anything in subtypesof(/datum/map_template/outpost)) var/datum/map_template/outpost/outpost_template = new outpost_type() diff --git a/code/datums/ert.dm b/code/datums/ert.dm index 847168876485..2c84f254cd6f 100644 --- a/code/datums/ert.dm +++ b/code/datums/ert.dm @@ -224,6 +224,12 @@ spawn_at_outpost = FALSE ert_template = /datum/map_template/shuttle/subshuttles/sugarcube +/datum/ert/frontier/random + teamsize = 8 + leader_role = /datum/antagonist/ert/frontier/random + roles = list(/datum/antagonist/ert/frontier/random) + rename_team = "Randomly Equipped Frontiersmen Team" + /datum/ert/frontier/assault leader_role = /datum/antagonist/ert/frontier/leader roles = list(/datum/antagonist/ert/frontier, /datum/antagonist/ert/frontier/medic, /datum/antagonist/ert/frontier/engineer) diff --git a/code/datums/holocall.dm b/code/datums/holocall.dm index 6fd41b9df929..721444281653 100644 --- a/code/datums/holocall.dm +++ b/code/datums/holocall.dm @@ -349,21 +349,12 @@ /datum/preset_holoimage/engineer outfit_type = /datum/outfit/job/engineer -/datum/preset_holoimage/engineer/rig - outfit_type = /datum/outfit/job/engineer/gloved/rig - /datum/preset_holoimage/engineer/ce outfit_type = /datum/outfit/job/ce -/datum/preset_holoimage/engineer/ce/rig - outfit_type = /datum/outfit/job/engineer/gloved/rig - /datum/preset_holoimage/engineer/atmos outfit_type = /datum/outfit/job/atmos -/datum/preset_holoimage/engineer/atmos/rig - outfit_type = /datum/outfit/job/engineer/gloved/rig - /datum/preset_holoimage/researcher outfit_type = /datum/outfit/job/scientist diff --git a/code/datums/mapgen/planetary/BeachGenerator.dm b/code/datums/mapgen/planetary/BeachGenerator.dm index ca1d70b929fa..7999d76f3a11 100644 --- a/code/datums/mapgen/planetary/BeachGenerator.dm +++ b/code/datums/mapgen/planetary/BeachGenerator.dm @@ -119,7 +119,7 @@ /mob/living/simple_animal/butterfly = 4, /mob/living/simple_animal/hostile/retaliate/poison/snake = 5, - /mob/living/simple_animal/hostile/poison/bees/toxin = 3, + /mob/living/simple_animal/hostile/poison/bees = 3, ) mob_spawn_chance = 2 feature_spawn_chance = 0.1 diff --git a/code/datums/mapgen/planetary/JungleGenerator.dm b/code/datums/mapgen/planetary/JungleGenerator.dm index dd5635d4841f..45ae4a7120cc 100644 --- a/code/datums/mapgen/planetary/JungleGenerator.dm +++ b/code/datums/mapgen/planetary/JungleGenerator.dm @@ -228,7 +228,7 @@ ) mob_spawn_chance = 1 mob_spawn_list = list( - /mob/living/simple_animal/hostile/poison/bees/toxin = 1, + /mob/living/simple_animal/hostile/poison/bees = 1, /mob/living/simple_animal/hostile/mushroom = 1, /mob/living/simple_animal/pet/dog/corgi/capybara = 1 ) diff --git a/code/game/MapData/shuttles/nanotrasen_ranger.dm b/code/game/MapData/shuttles/nanotrasen_ranger.dm index ec41a611618f..df5a0a9b4a08 100644 --- a/code/game/MapData/shuttles/nanotrasen_ranger.dm +++ b/code/game/MapData/shuttles/nanotrasen_ranger.dm @@ -5,7 +5,7 @@ /obj/item/clothing/under/rank/security/head_of_security/nt/lp name = "LP Security Specialist's Jumpsuit" - desc = "The ERT ran out of outfits to give to the LP, so they gave them station spares. This one belongs to the LP Lieutenant." + desc = "The ERT ran out of outfits to give to the LP, so they gave them station spares. This one belongs to the LP Security Specialist." /obj/item/clothing/under/rank/security/head_of_security/alt/lp name = "LP Lieutentant's 'Dramatic' Jumpsuit" @@ -91,7 +91,7 @@ //Holocalls /datum/preset_holoimage/commissioner - outfit_type = /datum/outfit/job/captain/nt/lp_lieutenant + outfit_type = /datum/outfit/job/nanotrasen/captain/lp //hardsuits /obj/item/clothing/suit/space/hardsuit/ert/lp diff --git a/code/game/MapData/shuttles/srm_glaive.dm b/code/game/MapData/shuttles/srm_glaive.dm index a40e9bd426c1..db6561b6550c 100644 --- a/code/game/MapData/shuttles/srm_glaive.dm +++ b/code/game/MapData/shuttles/srm_glaive.dm @@ -48,7 +48,7 @@ icon_state = "Sleep" /datum/preset_holoimage/montagne - outfit_type = /datum/outfit/job/hos/roumain + outfit_type = /datum/outfit/job/roumain/captain /obj/item/disk/holodisk/roumain name = "Grand Ideology Sermon" diff --git a/code/game/area/areas/holodeck.dm b/code/game/area/areas/holodeck.dm deleted file mode 100644 index c8741a23ae7e..000000000000 --- a/code/game/area/areas/holodeck.dm +++ /dev/null @@ -1,52 +0,0 @@ -/area/holodeck - name = "Holodeck" - icon_state = "Holodeck" - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - flags_1 = NONE - area_flags = VALID_TERRITORY | UNIQUE_AREA - sound_environment = SOUND_ENVIRONMENT_PADDED_CELL - - var/obj/machinery/computer/holodeck/linked - var/restricted = 0 // if true, program goes on emag list - -/* - Power tracking: Use the holodeck computer's power grid - Asserts are to avoid the inevitable infinite loops -*/ - -/area/holodeck/powered(chan) - if(!requires_power) - return TRUE - if(always_unpowered) - return FALSE - if(!linked) - return FALSE - var/area/A = get_area(linked) - ASSERT(!istype(A, /area/holodeck)) - return A.powered(chan) - -/area/holodeck/addStaticPower(value, powerchannel) - if(!linked) - return - var/area/A = get_area(linked) - ASSERT(!istype(A, /area/holodeck)) - return ..() - -/area/holodeck/use_power(amount, chan) - if(!linked) - return 0 - var/area/A = get_area(linked) - ASSERT(!istype(A, /area/holodeck)) - return ..() - - -/* - This is the standard holodeck. It is intended to allow you to - blow off steam by doing stupid things like laying down, throwing - spheres at holes, or bludgeoning people. -*/ -/area/holodeck/rec_center - name = "\improper Recreational Holodeck" - -/area/holodeck/rec_center/offstation_one - name = "\improper Recreational Holodeck" diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 14b3887ca539..1dee49da7f54 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -244,10 +244,22 @@ Security HUDs! Basic mode shows only the job. var/image/holder = hud_list[ID_HUD] var/icon/I = icon(icon, icon_state, dir) holder.pixel_y = I.Height() - world.icon_size - holder.icon_state = "hudno_id" + holder.icon_state = "hudno_job" var/obj/item/card/id/worn_id = wear_id?.GetID() if(worn_id && worn_id.job_icon) holder.icon_state = "hud[worn_id.job_icon]" + + var/underlay_icon_state = "hudunknown" + if(worn_id && worn_id.faction_icon) + underlay_icon_state = "hud[worn_id.faction_icon]" + + var/mutable_appearance/faction_background = mutable_appearance( + icon = holder.icon, + icon_state = underlay_icon_state + ) + holder.underlays.Cut() + holder.underlays += faction_background + sec_hud_set_security_status() /mob/living/proc/sec_hud_set_implants() diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index c4e48f1a629a..ad440817942b 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -161,6 +161,7 @@ var/icon/cached_flat_icon var/registered_age = 13 // default age for ss13 players var/job_icon + var/faction_icon /obj/item/card/id/Initialize(mapload) . = ..() @@ -435,11 +436,6 @@ update_label() registered_name = "Emergency Command Hologram" access = list(ACCESS_CHANGE_IDS) -/obj/item/card/id/silver/reaper - access = list(ACCESS_MAINT_TUNNELS) - assignment = "Reaper" - registered_name = "Thirteen" - /obj/item/card/id/gold name = "gold identification card" desc = "A golden card which shows power and might." @@ -525,6 +521,8 @@ update_label() else if (popup_input == "Forge/Reset" && forged) registered_name = initial(registered_name) assignment = initial(assignment) + faction_icon = initial(faction_icon) + job_icon = initial(job_icon) log_game("[key_name(user)] has reset \the [initial(name)] named \"[src]\" to default.") update_label() forged = FALSE diff --git a/code/game/objects/items/circuitboards/computer_circuitboards.dm b/code/game/objects/items/circuitboards/computer_circuitboards.dm index 8cbda2b3af5a..54dcfb36c131 100644 --- a/code/game/objects/items/circuitboards/computer_circuitboards.dm +++ b/code/game/objects/items/circuitboards/computer_circuitboards.dm @@ -180,11 +180,6 @@ icon_state = "generic" build_path = /obj/machinery/computer/arcade/orion_trail -/obj/item/circuitboard/computer/holodeck// Not going to let people get this, but it's just here for future - name = "Holodeck Control (Computer Board)" - icon_state = "generic" - build_path = /obj/machinery/computer/holodeck - /obj/item/circuitboard/computer/libraryconsole name = "Library Visitor Console (Computer Board)" build_path = /obj/machinery/computer/libraryconsole diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 4b91fc6caae3..e1ad81e21413 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -296,6 +296,9 @@ QDEL_NULL(sparkler) return ..() +/obj/item/melee/baton/cattleprod/loaded + preload_cell_type = /obj/item/stock_parts/cell/high + /obj/item/melee/baton/boomerang name = "\improper OZtek Boomerang" desc = "A device invented in 2486 for the great Space Emu War by the confederacy of Australicus, these high-tech boomerangs also work exceptionally well at stunning crewmembers. Just be careful to catch it when thrown!" diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 211c03d1d98a..a976c49fb45c 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -617,7 +617,6 @@ icon_state = "deck_nanotrasen_full" w_class = WEIGHT_CLASS_SMALL var/cooldown = 0 - var/obj/machinery/computer/holodeck/holo = null // Holodeck cards should not be infinite var/list/cards = list() /obj/item/toy/cards/deck/Initialize() @@ -649,8 +648,6 @@ to_chat(user, "There are no more cards to draw!") return var/obj/item/toy/cards/singlecard/H = new/obj/item/toy/cards/singlecard(user.loc) - if(holo) - holo.spawned += H // track them leaving the holodeck choice = cards[1] H.cardname = choice H.parentdeck = src diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm index 56d0f0f2526f..3360f35d05d3 100644 --- a/code/game/objects/structures/ghost_role_spawners.dm +++ b/code/game/objects/structures/ghost_role_spawners.dm @@ -553,7 +553,7 @@ flavour_text = "You were mining peacefully, then a ash drake suddenly attacked, then you have died... or so you thought?\ You have no idea where you now, but you are glad to be alive." assignedrole = "Lost Shaft Miner" - outfit = /datum/outfit/job/miner/equipped + outfit = /datum/outfit/job/miner /obj/effect/mob_spawn/human/lost/ashwalker_heir icon = 'icons/obj/machines/sleeper.dmi' diff --git a/code/game/objects/structures/icemoon/cave_entrance.dm b/code/game/objects/structures/icemoon/cave_entrance.dm index 50cadf2f8801..dfd999e3aa3a 100644 --- a/code/game/objects/structures/icemoon/cave_entrance.dm +++ b/code/game/objects/structures/icemoon/cave_entrance.dm @@ -726,7 +726,7 @@ GLOBAL_LIST_INIT(ore_probability, list( new /mob/living/simple_animal/hostile/asteroid/goliath/beast(loc) new /mob/living/simple_animal/hostile/asteroid/goliath/beast(loc) new /mob/living/simple_animal/hostile/asteroid/goliath/beast/ancient(loc) - new /obj/effect/mob_spawn/human/miner/old(loc) + new /obj/effect/mob_spawn/human/miner(loc) new /turf/open/floor/plating/asteroid/basalt(loc) if(12)//sailing the ocean blue visible_message("Water pours out of the portal, followed by a strange vessel. It's occupied.") diff --git a/code/game/turfs/change_turf.dm b/code/game/turfs/change_turf.dm index a8567072f56b..07976f05631f 100644 --- a/code/game/turfs/change_turf.dm +++ b/code/game/turfs/change_turf.dm @@ -255,10 +255,12 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( if(flags_1 & INITIALIZED_1) stack_trace("CHANGETURF_SKIP was used in a PlaceOnTop call for a turf that's initialized. This is a mistake. [src]([type])") assemble_baseturfs() + + if(!length(baseturfs)) + baseturfs = list(baseturfs) + if(fake_turf_type) if(!new_baseturfs) // If no baseturfs list then we want to create one from the turf type - if(!length(baseturfs)) - baseturfs = list(baseturfs) var/list/old_baseturfs = baseturfs.Copy() if(!istype(src, /turf/closed)) old_baseturfs += type @@ -269,25 +271,23 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( // The old baseturfs are put underneath, and we sort out the unwanted ones newT.baseturfs = baseturfs_string_list(old_baseturfs + (newT.baseturfs - GLOB.blacklisted_automated_baseturfs), newT) return newT - if(!length(baseturfs)) - baseturfs = list(baseturfs) - if(!istype(src, /turf/closed)) - new_baseturfs = list(type) + new_baseturfs - baseturfs = baseturfs_string_list(baseturfs + new_baseturfs, src) - return ChangeTurf(fake_turf_type, null, flags) - if(!length(baseturfs)) - baseturfs = list(baseturfs) - if(!istype(src, /turf/closed)) - baseturfs = baseturfs_string_list(baseturfs + type, src) - var/turf/change_type - if(length(new_baseturfs)) - change_type = new_baseturfs[new_baseturfs.len] - new_baseturfs.len-- - if(new_baseturfs.len) + else + if(!istype(src, /turf/closed)) + new_baseturfs = list(type) + new_baseturfs baseturfs = baseturfs_string_list(baseturfs + new_baseturfs, src) + return ChangeTurf(fake_turf_type, null, flags) else - change_type = new_baseturfs - return ChangeTurf(change_type, null, flags) + if(!istype(src, /turf/closed)) + baseturfs = baseturfs_string_list(baseturfs + type, src) + var/turf/change_type + if(length(new_baseturfs)) + change_type = new_baseturfs[new_baseturfs.len] + new_baseturfs.len-- + if(new_baseturfs.len) + baseturfs = baseturfs_string_list(baseturfs + new_baseturfs, src) + else + change_type = new_baseturfs + return ChangeTurf(change_type, null, flags) // Copy an existing turf and put it on top // Returns the new turf diff --git a/code/game/turfs/open/floor/reinf_floor.dm b/code/game/turfs/open/floor/reinf_floor.dm index 04f005417eb0..68a96846adbb 100644 --- a/code/game/turfs/open/floor/reinf_floor.dm +++ b/code/game/turfs/open/floor/reinf_floor.dm @@ -3,7 +3,6 @@ name = "reinforced floor" desc = "Extremely sturdy." icon_state = "engine" - holodeck_compatible = TRUE thermal_conductivity = 0.025 heat_capacity = INFINITY floor_tile = /obj/item/stack/sheet/metal diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index ca5a6fe3fd25..4202be74b347 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -12,7 +12,7 @@ GLOBAL_LIST_EMPTY(created_baseturf_lists) // In class definition like here it should always be a single type. // A list will be created in initialization that figures out the baseturf's baseturf etc. // In the case of a list it is sorted from bottom layer to top. - // This shouldn't be modified directly, use the helper procs. + // This shouldn't be modified directly; use the helper procs, as many baseturf lists are shared between turfs. var/list/baseturfs = /turf/baseturf_bottom /// How hot the turf is, in kelvin @@ -73,9 +73,6 @@ GLOBAL_LIST_EMPTY(created_baseturf_lists) /// Used to stop radiation from travelling across virtual z-levels such as transit zones and planetary encounters. var/rad_fullblocker = FALSE - ///the holodeck can load onto this turf if TRUE - var/holodeck_compatible = FALSE - hitsound_volume = 90 /turf/vv_edit_var(var_name, new_value) @@ -388,7 +385,11 @@ GLOBAL_LIST_EMPTY(created_baseturf_lists) if(!AM.zfalling) zFall(AM) -// A proc in case it needs to be recreated or badmins want to change the baseturfs +// Initializes the baseturfs list, given an optional "fake_baseturf_type". +// If "fake_baseturf_type" is a list, then this turf's baseturfs are set to that list. +// Otherwise, if "fake_baseturf_type" is non-null, it is used as the top of the baseturf stack. +// If no fake_baseturf_type is passed, and the current turf's baseturfs variable is not a list, +// baseturfs are initialized using the intial baseturfs variable as the top of the baseturf stack. /turf/proc/assemble_baseturfs(turf/fake_baseturf_type) var/turf/current_target if(fake_baseturf_type) diff --git a/code/modules/antagonists/ert/ert.dm b/code/modules/antagonists/ert/ert.dm index f28bd9e428bb..f529c19901a3 100644 --- a/code/modules/antagonists/ert/ert.dm +++ b/code/modules/antagonists/ert/ert.dm @@ -207,23 +207,23 @@ /datum/antagonist/ert/lp name = "Loss Prevention Security Specialist" - outfit = /datum/outfit/centcom/ert/lp + outfit = /datum/outfit/job/nanotrasen/ert/lp role = "Security Specialist" /datum/antagonist/ert/lp/medic name = "Loss Prevention Medical Specialist" - outfit = /datum/outfit/centcom/ert/lp/medic + outfit = /datum/outfit/job/nanotrasen/ert/lp/medic role = "Medical Specialist" /datum/antagonist/ert/lp/engineer name = "Loss Prevention Engineering Specialist" - outfit = /datum/outfit/centcom/ert/lp/engineer + outfit = /datum/outfit/job/nanotrasen/ert/lp/engineer role = "Engineering Specialist" /datum/antagonist/ert/lp/lieutenant name = "Loss Prevention Lieutenant" leader = TRUE - outfit = /datum/outfit/centcom/ert/lp/lieutenant + outfit = /datum/outfit/job/nanotrasen/ert/lp/lieutenant role = "Lieutenant" // ******************************************************************** @@ -232,7 +232,7 @@ /datum/antagonist/ert/inteq name = "Inteq Mercenary" - outfit = /datum/outfit/job/security/inteq + outfit = /datum/outfit/job/inteq/security random_names = TRUE role = "Enforcer" @@ -252,7 +252,7 @@ /datum/antagonist/ert/inteq/leader name = "Inteq Mercenary Leader" - outfit = /datum/outfit/job/captain/inteq + outfit = /datum/outfit/job/inteq/captain role = "Vanguard" // ******************************************************************** @@ -260,13 +260,13 @@ // ******************************************************************** /datum/antagonist/ert/solgov name = "SolGov Sonnensöldner" - outfit = /datum/outfit/centcom/ert/solgov + outfit = /datum/outfit/job/solgov/ert random_names = FALSE role = "Sonnensöldner" /datum/antagonist/ert/official/solgov name = "SolGov Inspector" - outfit = /datum/outfit/centcom/ert/solgov/inspector + outfit = /datum/outfit/job/solgov/ert/inspector role = "Solarian Inspector" /datum/antagonist/ert/official/solgov/greet() @@ -283,7 +283,7 @@ /datum/antagonist/ert/minutemen name = "Minutemen Infantry" - outfit = /datum/outfit/centcom/ert/minutemen + outfit = /datum/outfit/job/minutemen/ert role = "Minuteman" /datum/antagonist/ert/minutemen/greet() @@ -302,52 +302,52 @@ /datum/antagonist/ert/minutemen/leader name = "Minutemen Leader" leader = TRUE - outfit = /datum/outfit/centcom/ert/minutemen/leader + outfit = /datum/outfit/job/minutemen/ert/leader role = "Sergeant" /datum/antagonist/ert/minutemen/bard name = "BARD Infantry" - outfit = /datum/outfit/centcom/ert/minutemen/bard + outfit = /datum/outfit/job/minutemen/ert/bard role = "Minuteman" /datum/antagonist/ert/minutemen/bard/leader - name = "BARD Leader" + name = "BARD Sergeant" leader = TRUE - outfit = /datum/outfit/centcom/ert/minutemen/bard/leader + outfit = /datum/outfit/job/minutemen/ert/bard/leader role = "Sergeant" /datum/antagonist/ert/minutemen/riot name = "Riot Officer" - outfit = /datum/outfit/centcom/ert/minutemen/riot + outfit = /datum/outfit/job/minutemen/ert/riot role = "Minuteman" /datum/antagonist/ert/minutemen/riot/leader name = "Riot Sergeant" leader = TRUE - outfit = /datum/outfit/centcom/ert/minutemen/riot/leader + outfit = /datum/outfit/job/minutemen/ert/riot/leader role = "Sergeant" /datum/antagonist/ert/official/minutemen name = "GOLD Inspector" - outfit = /datum/outfit/centcom/ert/minutemen/inspector + outfit = /datum/outfit/job/minutemen/ert/inspector role = "Lieutenant" /datum/antagonist/ert/official/minutemen/greet() to_chat(owner, "You are the GOLD Inspector.") if (ert_team) - to_chat(owner, "The Galactic Optimum Labor Division is sending you to [station_name()] with the task: [ert_team.mission.explanation_text]") + to_chat(owner, "You are part of The Galactic Optimum Labor Division, a division of the Colonial League. Your task: [ert_team.mission.explanation_text]") else - to_chat(owner, "The Galactic Optimum Labor Division is sending you to [station_name()] with the task: [mission.explanation_text]") + to_chat(owner, "You are part of The Galactic Optimum Labor Division, a division of the Colonial League. Your task: [ert_team.mission.explanation_text]") /datum/antagonist/ert/minutemen/piratehunters name = "Pirate Hunter" - outfit = /datum/outfit/centcom/ert/minutemen/piratehunters + outfit = /datum/outfit/job/minutemen/ert/pirate_hunter role = "Minuteman" /datum/antagonist/ert/minutemen/piratehunters/leader name = "Pirate Hunter Leader" leader = TRUE - outfit = /datum/outfit/centcom/ert/minutemen/piratehunters/leader + outfit = /datum/outfit/job/minutemen/ert/pirate_hunter/leader role = "Sergeant" // ******************************************************************** @@ -356,7 +356,7 @@ /datum/antagonist/ert/syndicate name = "Syndicate Infantry" - outfit = /datum/outfit/centcom/ert/syndicate + outfit = /datum/outfit/job/syndicate/ert role = "Squaddie" /datum/antagonist/ert/syndicate/greet() @@ -375,12 +375,12 @@ /datum/antagonist/ert/syndicate/leader name = "Syndicate Sergeant" leader = TRUE - outfit = /datum/outfit/centcom/ert/syndicate/leader + outfit = /datum/outfit/job/syndicate/ert/leader role = "Sergeant" /datum/antagonist/ert/syndicate/gorlex name = "2nd Battlegroup Trooper" - outfit = /datum/outfit/centcom/ert/syndicate/gorlex + outfit = /datum/outfit/job/syndicate/ert/gorlex role = "Trooper" /datum/antagonist/ert/syndicate/gorlex/greet() @@ -396,28 +396,28 @@ /datum/antagonist/ert/syndicate/gorlex/pointman name = "2nd Battlegroup Shotgunner" - outfit = /datum/outfit/centcom/ert/syndicate/gorlex/pointman + outfit = /datum/outfit/job/syndicate/ert/gorlex/pointman role = "Pointman" /datum/antagonist/ert/syndicate/gorlex/medic name = "2nd Battlegroup Medic" - outfit = /datum/outfit/centcom/ert/syndicate/gorlex/medic + outfit = /datum/outfit/job/syndicate/ert/gorlex/medic role = "Medic" /datum/antagonist/ert/syndicate/gorlex/sniper name = "2nd Battlegroup Sniper" - outfit = /datum/outfit/centcom/ert/syndicate/gorlex/sniper + outfit = /datum/outfit/job/syndicate/ert/gorlex/sniper role = "Marksman" /datum/antagonist/ert/syndicate/gorlex/leader name = "2nd Battlegroup Sergeant" leader = TRUE - outfit = /datum/outfit/centcom/ert/syndicate/gorlex/leader + outfit = /datum/outfit/job/syndicate/ert/gorlex/leader role = "Sergeant" /datum/antagonist/ert/syndicate/cybersun name = "Cybersun Commando" - outfit = /datum/outfit/centcom/ert/syndicate/cybersun + outfit = /datum/outfit/job/syndicate/ert/cybersun role = "Operative" /datum/antagonist/ert/syndicate/cybersun/greet() @@ -436,12 +436,12 @@ /datum/antagonist/ert/syndicate/cybersun/leader name = "Cybersun Commando Leader" leader = TRUE - outfit = /datum/outfit/centcom/ert/syndicate/cybersun/leader + outfit = /datum/outfit/job/syndicate/ert/cybersun/leader role = "Lead Operative" /datum/antagonist/ert/syndicate/cybersun/medic name = "Cybersun Paramedic" - outfit = /datum/outfit/centcom/ert/syndicate/cybersun/medic + outfit = /datum/outfit/job/syndicate/ert/cybersun/medic role = "Medical Technician" /datum/antagonist/ert/syndicate/cybersun/medic/greet() @@ -458,7 +458,7 @@ /datum/antagonist/ert/syndicate/cybersun/medic/leader name = "Cybersun Lead Paramedic" leader = TRUE - outfit = /datum/outfit/centcom/ert/syndicate/cybersun/medic/leader + outfit = /datum/outfit/job/syndicate/ert/cybersun/medic/leader role = "Lead Medical Technician" // ******************************************************************** @@ -467,7 +467,7 @@ /datum/antagonist/ert/frontier name = "Frontiersmen Pirate" - outfit = /datum/outfit/centcom/ert/frontiersmen + outfit = /datum/outfit/job/frontiersmen/ert role = "Grunt" /datum/antagonist/ert/frontier/greet() @@ -481,19 +481,22 @@ missiondesc += "
Your Mission: [ert_team.mission.explanation_text]" to_chat(owner,missiondesc) +/datum/antagonist/ert/frontier/random + outfit = /datum/outfit/job/frontiersmen/ert/random + /datum/antagonist/ert/frontier/leader name = "Frontiersmen Officer" - outfit = /datum/outfit/centcom/ert/frontiersmen/leader + outfit = /datum/outfit/job/frontiersmen/ert/leader role = "Officer" /datum/antagonist/ert/frontier/medic name = "Frontiersmen Medic" - outfit = /datum/outfit/centcom/ert/frontiersmen/medic + outfit = /datum/outfit/job/frontiersmen/ert/medic role = "Stretcher-Bearer" /datum/antagonist/ert/frontier/engineer name = "Frontiersmen Engineer" - outfit = /datum/outfit/centcom/ert/frontiersmen/engineer + outfit = /datum/outfit/job/frontiersmen/ert/engineer role = "Sapper" // ******************************************************************** @@ -502,7 +505,7 @@ /datum/antagonist/ert/independent name = "Independent Security Officer" - outfit = /datum/outfit/centcom/ert/independent + outfit = /datum/outfit/job/independent/ert role = "Security Officer" /datum/antagonist/ert/independent/greet() @@ -518,25 +521,25 @@ /datum/antagonist/ert/independent/emt name = "Independent Medical Technician" - outfit = /datum/outfit/centcom/ert/independent/emt + outfit = /datum/outfit/job/independent/ert/emt role = "Paramedic" /datum/antagonist/ert/independent/firefighter name = "Independent Firefighter" - outfit = /datum/outfit/centcom/ert/independent/firefighter + outfit = /datum/outfit/job/independent/ert/firefighter role = "Firefighter" /datum/antagonist/ert/independent/firefighter/medic name = "Independent Firefighter Paramedic" - outfit = /datum/outfit/centcom/ert/independent/firefighter/medic + outfit = /datum/outfit/job/independent/ert/firefighter/medic role = "Paramedic" /datum/antagonist/ert/independent/firefighter/leader name = "Independent Firefighter Group Captain" - outfit = /datum/outfit/centcom/ert/independent/firefighter/leader + outfit = /datum/outfit/job/independent/ert/firefighter/leader role = "Group Captain" /datum/antagonist/ert/independent/technician name = "Independent Technician" - outfit = /datum/outfit/centcom/ert/independent/technician + outfit = /datum/outfit/job/independent/ert/technician role = "Technician" diff --git a/code/modules/autowiki/pages/ships.dm b/code/modules/autowiki/pages/ships.dm index 372e9d14a9cb..ecbdf8c65e2d 100644 --- a/code/modules/autowiki/pages/ships.dm +++ b/code/modules/autowiki/pages/ships.dm @@ -74,14 +74,8 @@ return output /datum/autowiki/ship/proc/get_dummy_image(datum/job/to_equip, filename) - //Limited to just the humanoid-compliant roundstart species, but at least it's not just human. - var/static/list/species = list(/datum/species/ethereal, /datum/species/human, /datum/species/ipc, /datum/species/lizard, /datum/species/moth, /datum/species/spider) - //Length times ascii char of the last letter, good enough(?) #entropy - var/seed = length(filename) * text2ascii(filename, length(filename)) //Controlled randomisation - wiki_dummy.seeded_randomization(seed) - //Each outfit will always have the same species - wiki_dummy.set_species(species[seed % length(species) + 1]) + wiki_dummy.seeded_randomization(filename) //Delete all the old stuff they had wiki_dummy.wipe_state() diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index 92f8a61ab4d7..3cc75b08ae1b 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -358,12 +358,9 @@ /obj/effect/mob_spawn/human/engineer name = "Engineer" - outfit = /datum/outfit/job/engineer/gloved + outfit = /datum/outfit/job/engineer icon_state = "corpseengineer" -/obj/effect/mob_spawn/human/engineer/rig - outfit = /datum/outfit/job/engineer/gloved/rig - /obj/effect/mob_spawn/human/clown name = "Clown" outfit = /datum/outfit/job/clown @@ -379,15 +376,6 @@ outfit = /datum/outfit/job/miner icon_state = "corpseminer" -/obj/effect/mob_spawn/human/miner/rig - outfit = /datum/outfit/job/miner/equipped/hardsuit - -/obj/effect/mob_spawn/human/miner/explorer - outfit = /datum/outfit/job/miner/equipped - -/obj/effect/mob_spawn/human/miner/old - outfit = /datum/outfit/job/miner/old - /obj/effect/mob_spawn/human/plasmaman mob_species = /datum/species/plasmaman outfit = /datum/outfit/plasmaman diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index e16fde8d54f0..eb629f76ae43 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -100,9 +100,9 @@ var/outfit_type = outfit_options[selected] if(!outfit_type) return FALSE - var/datum/outfit/job/O = new outfit_type() - var/list/outfit_types = O.get_chameleon_disguise_info() - var/datum/job/job_datum = GLOB.type_occupations[O.jobtype] + var/datum/outfit/job/outfit = new outfit_type() + var/list/outfit_types = outfit.get_chameleon_disguise_info() + var/datum/job/job_datum = GLOB.type_occupations[outfit.jobtype] for(var/V in user.chameleon_item_actions) var/datum/action/item_action/chameleon/change/A = V @@ -119,22 +119,40 @@ break //hardsuit helmets/suit hoods - if(O.toggle_helmet && (ispath(O.suit, /obj/item/clothing/suit/space/hardsuit) || ispath(O.suit, /obj/item/clothing/suit/hooded)) && ishuman(user)) + if(outfit.toggle_helmet && (ispath(outfit.suit, /obj/item/clothing/suit/space/hardsuit) || ispath(outfit.suit, /obj/item/clothing/suit/hooded)) && ishuman(user)) var/mob/living/carbon/human/H = user //make sure they are actually wearing the suit, not just holding it, and that they have a chameleon hat if(istype(H.wear_suit, /obj/item/clothing/suit/chameleon) && istype(H.head, /obj/item/clothing/head/chameleon)) var/helmet_type - if(ispath(O.suit, /obj/item/clothing/suit/space/hardsuit)) - var/obj/item/clothing/suit/space/hardsuit/hardsuit = O.suit + if(ispath(outfit.suit, /obj/item/clothing/suit/space/hardsuit)) + var/obj/item/clothing/suit/space/hardsuit/hardsuit = outfit.suit helmet_type = initial(hardsuit.helmettype) else - var/obj/item/clothing/suit/hooded/hooded = O.suit + var/obj/item/clothing/suit/hooded/hooded = outfit.suit helmet_type = initial(hooded.hoodtype) if(helmet_type) var/obj/item/clothing/head/chameleon/hat = H.head hat.chameleon_action.update_look(user, helmet_type) - qdel(O) + + // ID card sechud + if(outfit.job_icon) + if(!ishuman(user)) + return + var/mob/living/carbon/human/H = user + var/obj/item/card/id/card = H.wear_id + var/datum/job/J = GLOB.type_occupations[outfit.jobtype] // i really hope your outfit/job has a jobtype + if(!card) + return + var/old_assignment = card.assignment + card.job_icon = outfit.job_icon + card.faction_icon = outfit.faction_icon + card.assignment = J.name + card.update_label() + card.name = "[!card.registered_name ? initial(card.name) : "[card.registered_name]'s ID Card"][" ([old_assignment])"]" // this is terrible, but whatever + H.sec_hud_set_ID() + + qdel(outfit) return TRUE @@ -322,8 +340,10 @@ chameleon_action.emp_randomise(INFINITY) /obj/item/clothing/suit/chameleon - name = "armor" - desc = "A slim armored vest that protects against most types of damage." + name = "armor vest" + desc = "A slim Type I armored vest that provides decent protection against most types of damage." + icon = 'icons/obj/clothing/suits/armor.dmi' + mob_overlay_icon = 'icons/mob/clothing/suits/armor.dmi' icon_state = "armor" item_state = "armor" blood_overlay_type = "armor" @@ -351,9 +371,9 @@ chameleon_action.emp_randomise(INFINITY) /obj/item/clothing/glasses/chameleon - name = "Optical Meson Scanner" + name = "optical meson scanner" desc = "Used by engineering and mining staff to see basic structural and terrain layouts through walls, regardless of lighting condition." - icon_state = "meson" + icon_state = "mesongoggles" item_state = "meson" resistance_flags = NONE armor = list("melee" = 10, "bullet" = 10, "laser" = 10, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) @@ -489,7 +509,6 @@ voice_change = !voice_change to_chat(user, "The voice changer is now [voice_change ? "on" : "off"]!") - /obj/item/clothing/mask/chameleon/drone //Same as the drone chameleon hat, undroppable and no protection armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) diff --git a/code/modules/clothing/head/berets.dm b/code/modules/clothing/head/berets.dm index ca107806d69f..4c8595f2541d 100644 --- a/code/modules/clothing/head/berets.dm +++ b/code/modules/clothing/head/berets.dm @@ -1,7 +1,7 @@ //Mime /obj/item/clothing/head/beret name = "beret" - desc = "A beret, a mime's favorite headwear." + desc = "A red beret." icon_state = "beret" dog_fashion = /datum/dog_fashion/head/beret dynamic_hair_suffix = "+generic" @@ -15,13 +15,13 @@ /obj/item/clothing/head/beret/archaic name = "archaic beret" - desc = "An absolutely ancient beret, allegedly worn by the first mime to ever step foot on a Nanotrasen station." + desc = "An absolutely ancient beret." icon_state = "archaicberet" dog_fashion = null /obj/item/clothing/head/beret/black name = "black beret" - desc = "A black beret, perfect for war veterans and dark, brooding, anti-hero mimes." + desc = "A black beret." icon_state = "beret_black" /obj/item/clothing/head/beret/highlander @@ -97,7 +97,7 @@ icon_state = "beret_officer" /obj/item/clothing/head/beret/sec/brig_phys - desc = "A beret made out of black reinforced fabric with lue cross emblazoned on it. Denotes security's personal medic." + desc = "A beret made out of black reinforced fabric with a lue cross emblazoned on it. Denotes security's personal medic." icon_state = "beret_brigphys" //Engineering diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index ae7ecd5b121e..c4d13ef36948 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -55,7 +55,7 @@ /obj/item/clothing/head/caphat/frontier/admiral name = "\improper Frontiersmen admiral's cap" - desc = "An imposing peaked cap meant for only the highest of officers of the Frontiersman pirate fleet." + desc = "An imposing peaked cap meant for only the highest of officers of the Frontiersmen pirate fleet." icon_state = "frontier_admiral_cap" //Head of Personnel @@ -156,10 +156,9 @@ /obj/item/clothing/head/cowboy/sec/minutemen name = "colonial minutmen officer's slouch hat" - desc = "A commanding slouch hat adorned with a offier's badge, used by the Colonial Minutemen." + desc = "A commanding slouch hat adorned with a officer's badge, used by the Colonial Minutemen." icon_state = "minuteman_officer_hat" - /obj/item/clothing/head/cowboy/sec/roumain name = "hunter's hat" desc = "A fancy hat with a nice feather. The way it covers your eyes makes you feel like a badass." diff --git a/code/modules/clothing/outfits/ert/frontiersmen_ert.dm b/code/modules/clothing/outfits/ert/frontiersmen_ert.dm index db934aaa9761..27d89d1b7226 100644 --- a/code/modules/clothing/outfits/ert/frontiersmen_ert.dm +++ b/code/modules/clothing/outfits/ert/frontiersmen_ert.dm @@ -1,4 +1,4 @@ -/datum/outfit/centcom/ert/frontiersmen +/datum/outfit/job/frontiersmen/ert name = "ERT - Frontiersman Basic" head = /obj/item/clothing/head/beret/sec/frontier @@ -10,15 +10,113 @@ gloves = /obj/item/clothing/gloves/color/black ears = /obj/item/radio/headset/pirate/alt back = /obj/item/storage/backpack - belt = null l_pocket = /obj/item/flashlight/seclite r_pocket = /obj/item/tank/internals/emergency_oxygen/double + id = null // lol + backpack_contents = list(/obj/item/ammo_box/a762=5, /obj/item/grenade/frag=1) - id_role = "Grunt" +/datum/outfit/job/frontiersmen/ert/random + name = "ERT - Frontiersman Randomized" + + head = null + mask = null + suit = null + suit_store = null + back = null + l_pocket = null + r_pocket = /obj/item/radio + backpack_contents = list() + +/datum/outfit/job/frontiersmen/ert/random/pre_equip(mob/living/carbon/human/H, visualsOnly, client/preference_source) + . = ..() + if(visualsOnly) + return + + if(prob(90)) + head = pickweight(list( + /obj/item/clothing/head/beret/sec/frontier = 10, + /obj/item/clothing/head/helmet/bulletproof/x11/frontier = 5, + /obj/item/reagent_containers/glass/bucket = 1)) + + if(prob(60)) + suit = pickweight(list( + /obj/item/clothing/suit/armor/vest = 5, + /obj/item/clothing/suit/armor/vest/bulletproof/frontier = 5, + /obj/item/clothing/suit/armor/vest/scrap_armor = 1)) -/datum/outfit/centcom/ert/frontiersmen/leader + if(prob(30)) + mask = pickweight(list( + /obj/item/clothing/mask/gas = 5, + /obj/item/clothing/mask/gas/sechailer/minutemen = 5, + /obj/item/clothing/mask/breath = 5, + /obj/item/clothing/mask/whistle = 3)) + + if(prob(90)) + back = pickweight(list( + /obj/item/storage/backpack = 20, + /obj/item/storage/backpack/satchel = 20, + /obj/item/storage/backpack/messenger = 20, + /obj/item/melee/baton/cattleprod/loaded = 5, + /obj/item/reagent_containers/food/snacks/baguette = 2, // yes you can put this on your back + /obj/item/deployable_turret_folded = 1, + )) + + if(prob(90)) + shoes = pickweight(list( + /obj/item/clothing/shoes/jackboots = 10, + /obj/item/clothing/shoes/sneakers = 5, + )) + + var/extra_class = pick(list("Doctor", "Breacher", "Ammo Carrier")) + switch(extra_class) + if("Doctor") + backpack_contents += list(/obj/item/storage/firstaid/regular = 1) + gloves = /obj/item/clothing/gloves/color/latex + if(prob(50)) + belt = /obj/item/storage/belt/medical/surgery + if(prob(30)) + glasses = /obj/item/clothing/glasses/hud/health + if("Breacher") + backpack_contents += list(/obj/item/grenade/c4 = 2) + if(prob(10)) + belt = /obj/item/storage/belt/grenade/full + if("Ammo Carrier") + backpack_contents += list(/obj/item/ammo_box/a762_39 = 1) + + var/weapon = pick(list("Bolt-Action", "Pistol", "Melee")) + switch(weapon) + if("Bolt-Action") + r_hand = /obj/item/gun/ballistic/rifle/boltaction + if(prob(70) && istype(back, /obj/item/storage/backpack)) + backpack_contents += list(/obj/item/ammo_box/a762 = rand(1,4)) + if(prob(55)) + l_pocket = /obj/item/ammo_box/a762 + if("Pistol") + r_hand = pick(list( + /obj/item/gun/ballistic/automatic/pistol/disposable, + /obj/item/gun/ballistic/automatic/pistol, + /obj/item/gun/ballistic/revolver/pepperbox, + /obj/item/gun/energy/e_gun/mini)) + if(prob(30)) + l_hand = pick(list( + /obj/item/gun/ballistic/automatic/pistol/disposable, + /obj/item/gun/ballistic/automatic/pistol, + /obj/item/gun/ballistic/revolver/pepperbox, + /obj/item/gun/energy/e_gun/mini)) + if("Melee") + r_hand = pickweight(list( + /obj/item/kitchen/knife = 15, + /obj/item/melee/baseball_bat = 10, + /obj/item/melee/cleric_mace = 7, + /obj/item/melee/roastingstick = 2, + /obj/item/kitchen/fork = 1, + /obj/item/melee/flyswatter = 1, + )) + + +/datum/outfit/job/frontiersmen/ert/leader name = "ERT - Frontiersman Officer" uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer @@ -31,9 +129,7 @@ backpack_contents = list(/obj/item/ammo_box/n762_clip=3, /obj/item/binoculars=1, /obj/item/kitchen/knife/combat/survival) - id_role = "Officer" - -/datum/outfit/centcom/ert/frontiersmen/medic +/datum/outfit/job/frontiersmen/ert/medic name = "ERT - Frontiersman Medic" back = /obj/item/storage/backpack/medic @@ -45,9 +141,8 @@ backpack_contents = list(/obj/item/storage/firstaid/medical=1, /obj/item/reagent_containers/hypospray/medipen/stimpack=3) - id_role = "Stretcher-Bearer" -/datum/outfit/centcom/ert/frontiersmen/engineer +/datum/outfit/job/frontiersmen/ert/engineer name = "ERT - Frontiersman Engineer" back = /obj/item/storage/backpack/industrial @@ -57,4 +152,3 @@ backpack_contents = list(/obj/item/grenade/c4=3, /obj/item/crowbar/large=1) - id_role = "Sapper" diff --git a/code/modules/clothing/outfits/ert/indie_ert.dm b/code/modules/clothing/outfits/ert/indie_ert.dm index 18b611d1183d..f64e7f86a99a 100644 --- a/code/modules/clothing/outfits/ert/indie_ert.dm +++ b/code/modules/clothing/outfits/ert/indie_ert.dm @@ -1,4 +1,4 @@ -/datum/outfit/centcom/ert/independent +/datum/outfit/job/independent/ert name = "ERT - Independent Security Officer" head = /obj/item/clothing/head/helmet/sec @@ -12,9 +12,7 @@ belt = /obj/item/storage/belt/security/full id = /obj/item/card/id - id_role = "Security Officer" - -/datum/outfit/centcom/ert/independent/emt +/datum/outfit/job/independent/ert/emt name = "ERT - Independent Paramedic" head = /obj/item/clothing/head/soft/paramedic @@ -27,9 +25,7 @@ back = /obj/item/storage/backpack/medic belt = /obj/item/storage/belt/medical/webbing/paramedic - id_role = "Emergency Medical Technician" - -/datum/outfit/centcom/ert/independent/firefighter +/datum/outfit/job/independent/ert/firefighter name = "ERT - Independent Firefighter (Standard)" head = /obj/item/clothing/head/hardhat/red @@ -45,9 +41,7 @@ l_pocket = /obj/item/crowbar/red r_pocket = /obj/item/radio - id_role = "Firefighter" - -/datum/outfit/centcom/ert/independent/firefighter/medic +/datum/outfit/job/independent/ert/firefighter/medic name = "ERT - Independent Firefighter (Medic)" mask = /obj/item/clothing/mask/breath/medical @@ -60,9 +54,7 @@ backpack_contents = list(/obj/item/storage/firstaid/fire=1, /obj/item/storage/firstaid/o2=1, /obj/item/radio=1) - id_role = "Emergency Medical Technician" - -/datum/outfit/centcom/ert/independent/firefighter/leader +/datum/outfit/job/independent/ert/firefighter/leader name = "ERT - Independent Firefighter (Group Captain)" back = /obj/item/fireaxe @@ -72,12 +64,11 @@ belt = /obj/item/storage/belt/utility/atmostech gloves = /obj/item/clothing/gloves/color/yellow - id_role = "Group Captain" - -/datum/outfit/centcom/ert/independent/technician +/datum/outfit/job/independent/ert/technician name = "ERT - Independent Technician" head = /obj/item/clothing/head/hardhat + uniform = /obj/item/clothing/under/rank/engineering/engineer belt = /obj/item/storage/belt/utility/full/engi suit = /obj/item/clothing/suit/toggle/hazard shoes = /obj/item/clothing/shoes/workboots diff --git a/code/modules/clothing/outfits/ert/inteq_ert.dm b/code/modules/clothing/outfits/ert/inteq_ert.dm index 05d4f22eb69a..f9a0aec2dc57 100644 --- a/code/modules/clothing/outfits/ert/inteq_ert.dm +++ b/code/modules/clothing/outfits/ert/inteq_ert.dm @@ -1,4 +1,4 @@ -/datum/outfit/centcom/ert/inteq +/datum/outfit/job/inteq/ert name = "ERT - Inteq Rifleman" mask = /obj/item/clothing/mask/gas/sechailer/inteq @@ -17,9 +17,8 @@ backpack_contents = list(/obj/item/radio=1) - id_role = "Enforcer" -/datum/outfit/centcom/ert/inteq/shotgun +/datum/outfit/job/inteq/ert/shotgun name = "ERT - Inteq Shotgunner" suit_store = /obj/item/gun/ballistic/shotgun/automatic/combat/compact @@ -27,9 +26,7 @@ backpack_contents = list(/obj/item/storage/box/lethalshot=2, /obj/item/radio=1) - id_role = "Enforcer" - -/datum/outfit/centcom/ert/inteq/medic +/datum/outfit/job/inteq/ert/medic name = "ERT - Inteq Corpsman" uniform = /obj/item/clothing/under/syndicate/inteq/corpsman @@ -38,16 +35,12 @@ l_pocket = /obj/item/healthanalyzer - id_role = "Corpsman" - backpack_contents = list(/obj/item/storage/firstaid/medical=1, /obj/item/radio=1) -/datum/outfit/centcom/ert/inteq/leader +/datum/outfit/job/inteq/ert/leader name = "ERT - Inteq Vanguard" ears = /obj/item/radio/headset/inteq/alt/captain back = /obj/item/storage/backpack/messenger/inteq suit_store = /obj/item/gun/ballistic/automatic/pistol/commander/inteq id = /obj/item/card/id/silver - - id_role = "Vanguard" diff --git a/code/modules/clothing/outfits/ert/minutemen_ert.dm b/code/modules/clothing/outfits/ert/minutemen_ert.dm index 6ec68e0799ca..6fc4821784b5 100644 --- a/code/modules/clothing/outfits/ert/minutemen_ert.dm +++ b/code/modules/clothing/outfits/ert/minutemen_ert.dm @@ -1,5 +1,5 @@ -/datum/outfit/centcom/ert/minutemen - name = "ERT - Minutemen Basic" +/datum/outfit/job/minutemen/ert + name = "ERT - Minuteman" head = /obj/item/clothing/head/helmet/bulletproof/minutemen uniform = /obj/item/clothing/under/rank/security/officer/minutemen @@ -7,24 +7,23 @@ ears = /obj/item/radio/headset/minutemen/alt back = /obj/item/storage/backpack/security/cmm suit = /obj/item/clothing/suit/armor/vest/bulletproof + suit_store = /obj/item/gun/ballistic/automatic/assault/p16/minutemen id = /obj/item/card/id + belt = /obj/item/storage/belt/military/minutemen/p16 r_pocket = /obj/item/kitchen/knife/combat l_pocket = /obj/item/flashlight/seclite box = /obj/item/storage/box/survival/security - id_role = "Minutemen" - -/datum/outfit/centcom/ert/minutemen/leader - name = "ERT - Minutemen Basic Sergeant" +/datum/outfit/job/minutemen/ert/leader + name = "ERT - Minuteman Sergeant" ears = /obj/item/radio/headset/minutemen/alt/captain back = /obj/item/storage/backpack/satchel/sec/cmm + head = /obj/item/clothing/head/beret/command - id_role = "Sergeant" - -/datum/outfit/centcom/ert/minutemen/bard - name = "ERT - Minutemen BARD" +/datum/outfit/job/minutemen/ert/bard + name = "ERT - Minuteman (BARD)" suit = /obj/item/clothing/suit/armor/vest/marine/medium suit_store = /obj/item/gun/ballistic/automatic/smg/cm5 @@ -41,10 +40,9 @@ /obj/item/flashlight/flare = 2 ) - id_role = "Minutemen" -/datum/outfit/centcom/ert/minutemen/bard/leader - name = "ERT - Minutemen BARD Sergeant" +/datum/outfit/job/minutemen/ert/bard/leader + name = "ERT - Minuteman Sergeant (BARD)" belt = /obj/item/storage/belt/military/assault/minutemen uniform = /obj/item/clothing/under/rank/command/minutemen @@ -60,10 +58,8 @@ /obj/item/flashlight/seclite = 1 ) - id_role = "Sergeant" - -/datum/outfit/centcom/ert/minutemen/riot - name = "ERT - Minutemen Riot Officer" +/datum/outfit/job/minutemen/ert/riot + name = "ERT - Minuteman (Riot Officer)" suit = /obj/item/clothing/suit/armor/riot/minutemen head = /obj/item/clothing/head/helmet/riot/minutemen @@ -76,25 +72,22 @@ backpack_contents = null box = null - id_role = "Minutemen" - -/datum/outfit/centcom/ert/minutemen/riot/leader - name = "ERT - Minutemen Riot Officer Sergeant" +/datum/outfit/job/minutemen/ert/riot/leader + name = "ERT - Minutemen Sergeant (Riot Officer)" ears = /obj/item/radio/headset/minutemen/alt/captain back = /obj/item/shield/riot/flash - id_role = "Sergeant" - -/datum/outfit/centcom/ert/minutemen/inspector - name = "ERT - Minutemen GOLD Inspector" +/datum/outfit/job/minutemen/ert/inspector + name = "ERT - Inspector (Minutemen GOLD)" - head = null + head = /obj/item/clothing/head/cowboy/sec/minutemen mask = null belt = /obj/item/clipboard glasses = /obj/item/clothing/glasses/sunglasses uniform = /obj/item/clothing/under/rank/command/minutemen suit = /obj/item/clothing/suit/toggle/lawyer/minutemen + suit_store = null ears = /obj/item/radio/headset/minutemen/alt/captain back = /obj/item/storage/backpack/satchel/leather id = /obj/item/card/id/silver @@ -102,25 +95,18 @@ l_pocket = null r_pocket = null - id_role = "Lieutenant" - -/datum/outfit/centcom/ert/minutemen/piratehunters - name = "ERT - Minutemen Pirate Hunter" +/datum/outfit/job/minutemen/ert/pirate_hunter + name = "ERT - Minuteman (Pirate Hunter)" head = null suit = /obj/item/clothing/suit/space/hardsuit/security/independent/minutemen - belt = /obj/item/storage/belt/military/minutemen/p16 - suit_store = /obj/item/gun/ballistic/automatic/assault/p16/minutemen - id_role = "Minutemen" - -/datum/outfit/centcom/ert/minutemen/piratehunters/leader - name = "ERT - Minutemen Pirate Hunter Leader" +/datum/outfit/job/minutemen/ert/pirate_hunter/leader + name = "ERT - Minutemen Sergeant (Pirate Hunter)" uniform = /obj/item/clothing/under/rank/command/minutemen ears = /obj/item/radio/headset/minutemen/alt/captain belt = /obj/item/storage/belt/military/minutemen/gal suit_store = /obj/item/gun/ballistic/automatic/gal - backpack_contents = list(/obj/item/ammo_box/magazine/gal=4) - id_role = "Sergeant" + backpack_contents = list(/obj/item/ammo_box/magazine/gal=4) diff --git a/code/modules/clothing/outfits/ert/nanotrasen_ert.dm b/code/modules/clothing/outfits/ert/nanotrasen_ert.dm index 6fb533504715..2d397b8de828 100644 --- a/code/modules/clothing/outfits/ert/nanotrasen_ert.dm +++ b/code/modules/clothing/outfits/ert/nanotrasen_ert.dm @@ -7,8 +7,6 @@ shoes = /obj/item/clothing/shoes/combat/swat gloves = /obj/item/clothing/gloves/combat ears = /obj/item/radio/headset/headset_cent/alt - // determines what role goes on the ID of an ert member. cheap workaround for implementing it into the ert datum - var/id_role = "Emergency Response Officer" /datum/outfit/centcom/ert/post_equip(mob/living/carbon/human/human, visualsOnly = FALSE) if(visualsOnly) @@ -17,7 +15,6 @@ var/obj/item/card/id/id = human.wear_id if(id) id.registered_name = human.real_name - id.assignment = id_role id.update_label() ..() @@ -34,8 +31,6 @@ /obj/item/melee/baton/loaded=1) l_pocket = /obj/item/switchblade - id_role = "Emergency Response Team Commander" - /datum/outfit/centcom/ert/commander/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -103,8 +98,6 @@ /obj/item/reagent_containers/hypospray/combat=1,\ /obj/item/gun/medbeam=1) - id_role = "Medical Response Officer" - /datum/outfit/centcom/ert/medic/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -140,7 +133,6 @@ /obj/item/melee/baton/loaded=1,\ /obj/item/construction/rcd/loaded=1) - id_role = "Engineering Response Officer" /datum/outfit/centcom/ert/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -214,8 +206,6 @@ /obj/item/reagent_containers/glass/bucket=1,\ /obj/item/grenade/clusterbuster/cleaner=1) - id_role = "Janitorial Response Officer" - /datum/outfit/centcom/ert/janitor/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -304,8 +294,6 @@ mask = /obj/item/clothing/mask/gas/sechailer head = /obj/item/clothing/head/helmet/marine - id_role = "Emergency Response Team Commander" - /datum/outfit/centcom/ert/marine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -353,8 +341,6 @@ belt = /obj/item/storage/belt/medical/paramedic glasses = /obj/item/clothing/glasses/hud/health/sunglasses - id_role = "Medical Response Officer" - /datum/outfit/centcom/ert/marine/medic/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -382,8 +368,6 @@ belt = /obj/item/storage/belt/utility/full/ert glasses = /obj/item/clothing/glasses/hud/diagnostic/sunglasses - id_role = "Engineering Response Officer" - /datum/outfit/centcom/ert/marine/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -395,9 +379,9 @@ headset.recalculateChannels() // Loss Prevention - -/datum/outfit/centcom/ert/lp +/datum/outfit/job/nanotrasen/ert/lp name = "ERT - Loss Prevention Security Specialist" + jobtype = /datum/job/officer head = null implants = list(/obj/item/implant/mindshield) @@ -418,10 +402,10 @@ backpack_contents = list(/obj/item/radio=1, /obj/item/stock_parts/cell/gun/upgraded=2, /obj/item/screwdriver=1) - id_role = "Security Specialist" -/datum/outfit/centcom/ert/lp/medic +/datum/outfit/job/nanotrasen/ert/lp/medic name = "ERT - Loss Prevention Medical Specialist" + jobtype = /datum/job/doctor head = null uniform = /obj/item/clothing/under/rank/medical/paramedic/lp @@ -437,10 +421,10 @@ backpack_contents = list(/obj/item/storage/firstaid/medical=1, /obj/item/radio=1) - id_role = "Medical Specialist" -/datum/outfit/centcom/ert/lp/engineer +/datum/outfit/job/nanotrasen/ert/lp/engineer name = "ERT - Loss Prevention Engineering Specialist" + jobtype = /datum/job/engineer head = null uniform = /obj/item/clothing/under/rank/engineering/engineer/nt/lp @@ -455,12 +439,11 @@ l_pocket = /obj/item/extinguisher/mini r_pocket = /obj/item/wrench/combat - id_role = "Engineering Specialist" - backpack_contents = list(/obj/item/stack/sheet/metal/fifty=1, /obj/item/stack/sheet/glass/fifty=1, /obj/item/radio=1) -/datum/outfit/centcom/ert/lp/lieutenant +/datum/outfit/job/nanotrasen/ert/lp/lieutenant name = "ERT - Loss Prevention Lieutenant" + jobtype = /datum/job/captain head = null ears = /obj/item/radio/headset/nanotrasen/alt/captain @@ -476,5 +459,3 @@ box = /obj/item/storage/box/survival/radio l_pocket = /obj/item/megaphone/command r_pocket = /obj/item/binoculars - - id_role = "Lieutenant" diff --git a/code/modules/clothing/outfits/ert/solgov_ert.dm b/code/modules/clothing/outfits/ert/solgov_ert.dm index fbae8101728d..9962f1d9c74c 100644 --- a/code/modules/clothing/outfits/ert/solgov_ert.dm +++ b/code/modules/clothing/outfits/ert/solgov_ert.dm @@ -1,5 +1,7 @@ -/datum/outfit/centcom/ert/solgov +/datum/outfit/job/solgov/ert name = "ERT - SolGov Sonnensöldner" + jobtype = /datum/job/officer + job_icon = "sonnensoldner" id = /obj/item/card/id/solgov uniform = /obj/item/clothing/under/solgov @@ -14,10 +16,10 @@ box = /obj/item/storage/box/survival l_hand = /obj/item/energyhalberd - id_role = "Sonnensöldner" -/datum/outfit/centcom/ert/solgov/inspector +/datum/outfit/job/solgov/ert/inspector name = "ERT - SolGov Inspector" + jobtype = /datum/job/head_of_personnel uniform = /obj/item/clothing/under/solgov/formal belt = /obj/item/clipboard @@ -34,5 +36,3 @@ l_hand = null backpack_contents = list(/obj/item/stamp/solgov=1) - - id_role = "Inspector" diff --git a/code/modules/clothing/outfits/ert/syndicate_ert.dm b/code/modules/clothing/outfits/ert/syndicate_ert.dm index 5ec318f41d24..3ef6cea0e53b 100644 --- a/code/modules/clothing/outfits/ert/syndicate_ert.dm +++ b/code/modules/clothing/outfits/ert/syndicate_ert.dm @@ -1,7 +1,6 @@ -/datum/outfit/centcom/ert/syndicate +/datum/outfit/job/syndicate/ert name = "ERT - Syndicate Basic" - uniform = /obj/item/clothing/under/syndicate suit = /obj/item/clothing/suit/armor/vest/syndie suit_store = /obj/item/gun/ballistic/automatic/smg/c20r shoes = /obj/item/clothing/shoes/combat @@ -10,7 +9,7 @@ id = /obj/item/card/id/syndicate_command/crew_id mask = /obj/item/clothing/mask/gas/sechailer/minutemen head = /obj/item/clothing/head/helmet/operator - back = /obj/item/storage/backpack/fireproof + back = /obj/item/storage/backpack/security belt = /obj/item/storage/belt/military/c20r r_pocket = /obj/item/kitchen/knife/combat @@ -18,11 +17,10 @@ implants = list(/obj/item/implant/weapons_auth) backpack_contents = list(/obj/item/radio=1) - box = /obj/item/storage/box/survival/syndie - id_role = "Squaddie" + jobtype = /datum/job/officer // most of these are Shooty Shooty People anyway -/datum/outfit/centcom/ert/syndicate/leader +/datum/outfit/job/syndicate/ert/leader name = "ERT - Syndicate Basic Leader" head = /obj/item/clothing/head/HoS/beret/syndicate @@ -30,11 +28,9 @@ backpack_contents = list(/obj/item/gun/ballistic/automatic/pistol=1, /obj/item/ammo_box/magazine/m10mm=2, /obj/item/radio=1) - id_role = "Sergeant" - // gorlex loyalist/2nd battlegroup -/datum/outfit/centcom/ert/syndicate/gorlex +/datum/outfit/job/syndicate/ert/gorlex name = "ERT - Syndicate Gorlex Loyalist Trooper" head = /obj/item/clothing/head/helmet/swat @@ -44,15 +40,13 @@ back = /obj/item/storage/backpack/security suit_store = /obj/item/gun/ballistic/automatic/smg/m90 - id_role = "Trooper" - -/datum/outfit/centcom/ert/syndicate/gorlex/pointman +/datum/outfit/job/syndicate/ert/gorlex/pointman name = "ERT - Syndicate Gorlex Loyalist Pointman" suit_store = /obj/item/gun/ballistic/shotgun/bulldog belt = /obj/item/storage/belt/security/webbing/bulldog -/datum/outfit/centcom/ert/syndicate/gorlex/medic +/datum/outfit/job/syndicate/ert/gorlex/medic name = "ERT - Syndicate Gorlex Loyalist Medic" head = /obj/item/clothing/head/soft/black @@ -67,9 +61,7 @@ backpack_contents = list(/obj/item/ammo_box/magazine/m10mm=2, /obj/item/storage/firstaid/medical=1, /obj/item/defibrillator/compact/combat/loaded=1) - id_role = "Medic" - -/datum/outfit/centcom/ert/syndicate/gorlex/sniper +/datum/outfit/job/syndicate/ert/gorlex/sniper name = "ERT - Syndicate Gorlex Loyalist Sniper" head = /obj/item/clothing/head/beret/black @@ -85,9 +77,7 @@ backpack_contents = list(/obj/item/ammo_box/magazine/sniper_rounds=2, /obj/item/radio=1) - id_role = "Marksman" - -/datum/outfit/centcom/ert/syndicate/gorlex/leader +/datum/outfit/job/syndicate/ert/gorlex/leader name = "ERT - Syndicate Gorlex Loyalist Sergeant" uniform = /obj/item/clothing/under/syndicate/gorlex @@ -99,11 +89,9 @@ l_pocket = /obj/item/megaphone/sec - id_role = "Sergeant" - // commandos -/datum/outfit/centcom/ert/syndicate/cybersun +/datum/outfit/job/syndicate/ert/cybersun name = "ERT - Syndicate Cybersun Commando" head = null @@ -115,23 +103,19 @@ glasses = /obj/item/clothing/glasses/hud/security/sunglasses implants = list(/obj/item/implant/adrenalin) - backpack_contents = list(/obj/item/autosurgeon/syndicate/laser_arm, /obj/item/ammo_box/magazine/m10mm=2, /obj/item/radio=1) - - id_role = "Operative" + backpack_contents = list(/obj/item/autosurgeon/syndicate/laser_arm, /obj/item/radio=1) -/datum/outfit/centcom/ert/syndicate/cybersun/leader +/datum/outfit/job/syndicate/ert/cybersun/leader name = "ERT - Syndicate Cybersun Commando Leader" ears = /obj/item/radio/headset/syndicate/alt/captain glasses = /obj/item/clothing/glasses/hud/security/night - backpack_contents = list(/obj/item/autosurgeon/syndicate/laser_arm=1, /obj/item/ammo_box/magazine/m10mm=2, /obj/item/antag_spawner/nuke_ops/borg_tele/medical/unlocked=1, /obj/item/radio=1) - - id_role = "Lead Operative" + backpack_contents = list(/obj/item/autosurgeon/syndicate/laser_arm=1, /obj/item/antag_spawner/nuke_ops/borg_tele/medical/unlocked=1, /obj/item/radio=1) // paramedics -/datum/outfit/centcom/ert/syndicate/cybersun/medic +/datum/outfit/job/syndicate/ert/cybersun/medic name = "ERT - Syndicate Cybersun Paramedic" uniform = /obj/item/clothing/under/syndicate/medic @@ -149,9 +133,10 @@ backpack_contents = list(/obj/item/storage/firstaid/tactical=1, /obj/item/holosign_creator/medical=1, /obj/item/radio=1) - id_role = "Medical Technician" + jobtype = /datum/job/paramedic + job_icon = "paramedic" -/datum/outfit/centcom/ert/syndicate/cybersun/medic/leader +/datum/outfit/job/syndicate/ert/cybersun/medic/leader name = "ERT - Syndicate Cybersun Lead Paramedic" head = /obj/item/clothing/head/beret/cmo @@ -161,4 +146,29 @@ backpack_contents = list(/obj/item/storage/firstaid/tactical=1, /obj/item/holosign_creator/medical=1, /obj/item/autosurgeon/cmo=1, /obj/item/radio=1, /obj/item/antag_spawner/nuke_ops/borg_tele/medical/unlocked=1) - id_role = "Lead Medical Technician" +// inspector + +/datum/outfit/job/syndicate/ert/inspector + name = "ERT - Inspector (Syndicate)" + + uniform = /obj/item/clothing/under/syndicate/officer + head = /obj/item/clothing/head/HoS/beret/syndicate + mask = null + belt = /obj/item/clipboard + back = /obj/item/storage/backpack/satchel/leather + ears = /obj/item/radio/headset/syndicate/captain + shoes = /obj/item/clothing/shoes/laceup + gloves = /obj/item/clothing/gloves/color/white + suit = /obj/item/clothing/suit/armor/hos + suit_store = null + + job_icon = "syndicate" + jobtype = /datum/job/head_of_personnel + +/datum/outfit/job/syndicate/ert/inspector/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + var/obj/item/card/id/W = H.wear_id + if(W) + W.registered_name = H.real_name + W.assignment = "Inspector" + W.update_label() diff --git a/code/modules/clothing/outfits/factions/frontiersmen.dm b/code/modules/clothing/outfits/factions/frontiersmen.dm new file mode 100644 index 000000000000..7e97c7341fe7 --- /dev/null +++ b/code/modules/clothing/outfits/factions/frontiersmen.dm @@ -0,0 +1,184 @@ +/datum/outfit/job/frontiersmen + name = "Frontiersmen - Base Outfit" + + // faction_icon = "bg_frontiersmen" + + uniform = /obj/item/clothing/under/rank/security/officer/frontier + r_pocket = /obj/item/radio + shoes = /obj/item/clothing/shoes/jackboots + ears = /obj/item/radio/headset/pirate + box = /obj/item/storage/box/survival + id = /obj/item/card/id + + backpack = /obj/item/storage/backpack + satchel = /obj/item/storage/backpack/satchel + duffelbag = /obj/item/storage/backpack/duffelbag + courierbag = /obj/item/storage/backpack/messenger + +/datum/outfit/job/frontiersmen/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + if(visualsOnly) + return + H.faction |= list(FACTION_PLAYER_FRONTIERSMEN) + +// Assistant + +/datum/outfit/job/frontiersmen/assistant + name = "Frontiersmen - Rookie" + job_icon = "assistant" + jobtype = /datum/job/assistant + + head = /obj/item/clothing/head/beret/sec/frontier + +// Atmospheric Technician + +/datum/outfit/job/frontiersmen/atmos + name = "Frontiersmen - Atmospheric Specialist" + job_icon = "atmospherictechnician" + jobtype = /datum/job/atmos + + accessory = /obj/item/clothing/accessory/armband/engine + head = /obj/item/clothing/head/hardhat + +// Cargo Technician + +/datum/outfit/job/frontiersmen/cargo_tech + name = "Frontiersmen - Cargo Tech" + job_icon = "cargotechnician" + jobtype = /datum/job/cargo_tech + + accessory = /obj/item/clothing/accessory/armband/cargo + suit = /obj/item/clothing/suit/hazardvest + shoes = /obj/item/clothing/shoes/workboots + head = /obj/item/clothing/head/soft + backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo) + +// Captain + +/datum/outfit/job/frontiersmen/captain + name = "Frontiersmen - Captain" + job_icon = "captain" + jobtype = /datum/job/captain + + ears = /obj/item/radio/headset/pirate/alt/captain + uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer + head = /obj/item/clothing/head/caphat/frontier + mask = /obj/item/clothing/mask/gas/sechailer + suit = /obj/item/clothing/suit/armor/frontier + shoes = /obj/item/clothing/shoes/cowboy/black + gloves = /obj/item/clothing/gloves/combat + glasses = /obj/item/clothing/glasses/hud/security/sunglasses/eyepatch + +/datum/outfit/job/frontiersmen/captain/admiral + name = "Frontiersmen - Admiral" + + uniform = /obj/item/clothing/under/rank/security/officer/frontier/admiral + head = /obj/item/clothing/head/caphat/frontier/admiral + shoes = /obj/item/clothing/shoes/cowboy/white + ears = /obj/item/radio/headset/pirate/captain + gloves = /obj/item/clothing/gloves/color/evening + suit = null + mask = null + glasses = null + +// Chief Engineer +/datum/outfit/job/frontiersmen/ce + name = "Frontiersmen - Senior Sapper" + job_icon = "chiefengineer" + jobtype = /datum/job/chief_engineer + + accessory = /obj/item/clothing/accessory/armband/engine + ears = /obj/item/radio/headset/pirate/captain + uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer + head = /obj/item/clothing/head/hardhat/weldhat/white + shoes = /obj/item/clothing/shoes/combat + gloves = /obj/item/clothing/gloves/combat + belt = /obj/item/storage/belt/utility/full + +// Engineer +/datum/outfit/job/frontiersmen/engineer + name = "Frontiersmen - Sapper" + job_icon = "stationengineer" + jobtype = /datum/job/engineer + + accessory = /obj/item/clothing/accessory/armband/engine + belt = /obj/item/storage/belt/utility/full/engi + suit = /obj/item/clothing/suit/toggle/industrial + shoes = /obj/item/clothing/shoes/workboots + glasses = /obj/item/clothing/glasses/welding + head = /obj/item/clothing/head/beret/sec/frontier + + l_pocket = /obj/item/radio + r_pocket = /obj/item/analyzer + +// Cook + +/datum/outfit/job/frontiersmen/cook + name = "Frontiersmen - Steward" + job_icon = "cook" + jobtype = /datum/job/cook + + uniform = /obj/item/clothing/under/rank/security/officer/frontier + head = /obj/item/clothing/head/chefhat + suit = /obj/item/clothing/suit/apron/chef + +// Head of Personnel + +/datum/outfit/job/frontiersmen/hop + name = "Frontiersmen - Helmsman" + job_icon = "headofpersonnel" + jobtype = /datum/job/head_of_personnel + + ears = /obj/item/radio/headset/pirate/alt + uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer + shoes = /obj/item/clothing/shoes/cowboy/black + head = /obj/item/clothing/head/beret/sec/frontier/officer + gloves = /obj/item/clothing/gloves/combat + r_pocket = /obj/item/kitchen/knife/combat/survival + +// Head of Security +/datum/outfit/job/frontiersmen/hos + name = "Frontiersmen - Shipswain" + job_icon = "headofsecurity" + jobtype = /datum/job/hos + + accessory = /obj/item/clothing/accessory/armband + uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer + head = /obj/item/clothing/head/beret/sec/frontier/officer + suit = /obj/item/clothing/suit/armor/vest/bulletproof/frontier + shoes = /obj/item/clothing/shoes/cowboy/black + gloves = /obj/item/clothing/gloves/combat + backpack_contents = list(/obj/item/melee/baton/loaded=1) + suit_store = null + +// Security Officer + +/datum/outfit/job/frontiersmen/security + name = "Frontiersmen - Boarder" + job_icon = "securityofficer" + jobtype = /datum/job/officer + + accessory = /obj/item/clothing/accessory/armband + head = /obj/item/clothing/head/beret/sec/frontier + mask = /obj/item/clothing/mask/gas/sechailer/minutemen + suit = null + uniform = /obj/item/clothing/under/rank/security/officer/frontier + shoes = /obj/item/clothing/shoes/combat + gloves = /obj/item/clothing/gloves/color/black + ears = /obj/item/radio/headset/pirate/alt + + l_pocket = /obj/item/flashlight/seclite + r_pocket = /obj/item/tank/internals/emergency_oxygen/double + +// Medical Doctor + +/datum/outfit/job/frontiersmen/doctor + name = "Frontiersmen - Aidman" + job_icon = "medicaldoctor" + jobtype = /datum/job/doctor + + accessory = /obj/item/clothing/accessory/armband/med + uniform = /obj/item/clothing/under/rank/security/officer/frontier + glasses = /obj/item/clothing/glasses/hud/health/prescription + r_pocket = /obj/item/kitchen/knife/combat/survival + backpack_contents = list(/obj/item/storage/firstaid/medical) diff --git a/code/modules/clothing/outfits/gezena.dm b/code/modules/clothing/outfits/factions/gezena.dm similarity index 74% rename from code/modules/clothing/outfits/gezena.dm rename to code/modules/clothing/outfits/factions/gezena.dm index b9fc26afeff1..b5b077fa63f7 100644 --- a/code/modules/clothing/outfits/gezena.dm +++ b/code/modules/clothing/outfits/factions/gezena.dm @@ -1,14 +1,17 @@ /datum/outfit/job/gezena + name = "PGF - Base Outfit" + // faction_icon = "bg_pgf" /datum/outfit/job/gezena/post_equip(mob/living/carbon/human/H, visualsOnly) . = ..() if(visualsOnly) return - H.faction |= list("playergezena") + H.faction |= list(FACTION_PLAYER_GEZENA) /datum/outfit/job/gezena/assistant - name = "Deckhand (PGF)" + name = "PGF - Deckhand" jobtype = /datum/job/assistant + job_icon = "assistant" head = /obj/item/clothing/head/gezena uniform = /obj/item/clothing/under/gezena diff --git a/code/modules/clothing/outfits/factions/independent.dm b/code/modules/clothing/outfits/factions/independent.dm new file mode 100644 index 000000000000..97b806ec4b5b --- /dev/null +++ b/code/modules/clothing/outfits/factions/independent.dm @@ -0,0 +1,830 @@ +/datum/outfit/job/independent + name = "Independent - Base Outfit" + faction_icon = "bg_independent" + + uniform = /obj/item/clothing/under/utility + box = /obj/item/storage/box/survival + id = /obj/item/card/id + + r_pocket = /obj/item/storage/wallet + +// Assistant + +/datum/outfit/job/independent/assistant + name = "Independent - Assistant" + jobtype = /datum/job/assistant + job_icon = "assistant" + + shoes = /obj/item/clothing/shoes/sneakers/black + +/datum/outfit/job/independent/assistant/waiter + name = "Independent - Assistant (Waiter)" + uniform = /obj/item/clothing/under/suit/waiter + shoes = /obj/item/clothing/shoes/laceup + +/datum/outfit/job/independent/assistant/fancy + name = "Independent - Assistant (Formal Uniform)" + + shoes = /obj/item/clothing/shoes/laceup + uniform = /obj/item/clothing/under/misc/assistantformal + head = /obj/item/clothing/head/beret/grey + +/datum/outfit/job/independent/assistant/pirate + name = "Independent - Assistant (Pirate)" + + uniform = /obj/item/clothing/under/costume/pirate + suit = /obj/item/clothing/suit/pirate + head = /obj/item/clothing/head/bandana + +/datum/outfit/job/independent/assistant/pirate/jupiter + name = "Independent - Assistant (Nodesman)" // technically, this is part of SEC, but we have jackshit for SEC + + uniform = /obj/item/clothing/under/utility + head = /obj/item/clothing/head/soft/black + shoes = /obj/item/clothing/shoes/combat + l_pocket = /obj/item/kitchen/knife/combat/survival + gloves = /obj/item/clothing/gloves/combat + implants = list(/obj/item/implant/radio) + +/datum/outfit/job/independent/assistant/artist + name = "Independent - Assistant (Artist)" + + uniform = /obj/item/clothing/under/suit/burgundy + suit = /obj/item/clothing/suit/toggle/suspenders + head = /obj/item/clothing/head/beret/black + shoes = /obj/item/clothing/shoes/laceup + gloves = /obj/item/clothing/gloves/color/white + accessory = /obj/item/clothing/neck/scarf/darkblue + +/datum/outfit/job/independent/assistant/pharma + name = "Independent - Assistant (Pharmacology Student)" + + uniform = /obj/item/clothing/under/rank/medical/chemist + shoes = /obj/item/clothing/shoes/sneakers/white + accessory = /obj/item/clothing/neck/scarf/orange + l_pocket = /obj/item/reagent_containers/pill/floorpill + belt = /obj/item/reagent_scanner + backpack_contents = list(/obj/item/book/manual/wiki/chemistry=1) + +// Captain + +/datum/outfit/job/independent/captain + name = "Independent - Captain" + job_icon = "captain" + jobtype = /datum/job/captain + + id = /obj/item/card/id/gold + gloves = /obj/item/clothing/gloves/color/captain + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/command/captain + dcoat = /obj/item/clothing/suit/hooded/wintercoat/captain //WS Edit - Alt Uniforms + shoes = /obj/item/clothing/shoes/laceup + head = /obj/item/clothing/head/caphat + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1) + + backpack = /obj/item/storage/backpack/captain + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + + accessory = /obj/item/clothing/accessory/medal/gold/captain + + chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/captain) + +/datum/outfit/job/independent/captain/western + name = "Independent - Captain (Western)" + head = /obj/item/clothing/head/caphat/cowboy + shoes = /obj/item/clothing/shoes/cowboy/fancy + glasses = /obj/item/clothing/glasses/sunglasses + +/datum/outfit/job/independent/captain/masinyane + name = "Independent - Captain (Masinyane)" + uniform = /obj/item/clothing/under/suit/black + head = null + belt = null + gloves = null + shoes = /obj/item/clothing/shoes/laceup + + backpack_contents = list(/obj/item/clothing/accessory/medal/gold/captain=1, /obj/item/spacecash/bundle/c10000=1) + + backpack = /obj/item/storage/backpack + satchel = /obj/item/storage/backpack/satchel/ + duffelbag = /obj/item/storage/backpack/duffelbag + courierbag = /obj/item/storage/backpack/messenger + +/datum/outfit/job/independent/captain/pirate + name = "Captain (Pirate)" + + ears = /obj/item/radio/headset/pirate/captain + uniform = /obj/item/clothing/under/costume/pirate + shoes = /obj/item/clothing/shoes/jackboots + head = /obj/item/clothing/head/pirate/captain + suit = /obj/item/clothing/suit/pirate/captain + +/datum/outfit/job/independent/captain/pirate/jupiter + name = "Independent - Captain (Nodesman)" // technically, this is part of SEC, but we have jackshit for SEC + + uniform = /obj/item/clothing/under/utility + gloves = /obj/item/clothing/gloves/combat + suit = /obj/item/clothing/suit/armor/vest/marine/medium + head = /obj/item/clothing/head/soft/black + shoes = /obj/item/clothing/shoes/combat + l_pocket = /obj/item/kitchen/knife/combat + implants = list(/obj/item/implant/radio) + accessory = null + +// Head of Personnel + +/datum/outfit/job/independent/hop + name = "Independent - Head of Personnel" + job_icon = "headofpersonnel" + jobtype = /datum/job/head_of_personnel + + id = /obj/item/card/id/silver + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/command/head_of_personnel + dcoat = /obj/item/clothing/suit/hooded/wintercoat/captain + shoes = /obj/item/clothing/shoes/sneakers/brown + head = /obj/item/clothing/head/hopcap + + backpack_contents = list(/obj/item/storage/box/ids=1,\ + /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) + + backpack = /obj/item/storage/backpack/captain + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + + chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/head_of_personnel) + +/datum/outfit/job/independent/hop/western + name = "Independent - Head of Personnel (Western)" + + uniform = /obj/item/clothing/under/rank/security/detective/grey + shoes = /obj/item/clothing/shoes/cowboy/black + accessory = /obj/item/clothing/accessory/waistcoat + head = /obj/item/clothing/head/cowboy + +/datum/outfit/job/independent/hop/pirate + name = "Independent - Head of Personnel (Pirate)" + + ears = /obj/item/radio/headset/pirate + uniform = /obj/item/clothing/under/costume/pirate + shoes = /obj/item/clothing/shoes/jackboots + head = /obj/item/clothing/head/pirate + suit = /obj/item/clothing/suit/pirate + +// Head of Security + +/datum/outfit/job/independent/hos + name = "Independent - Head of Security" + job_icon = "headofsecurity" + jobtype = /datum/job/hos + + id = /obj/item/card/id/silver + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/security/head_of_security + alt_uniform = null + shoes = /obj/item/clothing/shoes/jackboots + suit = /obj/item/clothing/suit/armor/hos/trenchcoat + alt_suit = /obj/item/clothing/suit/armor/vest/security/hos + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/beret/sec/hos + glasses = /obj/item/clothing/glasses/hud/security/sunglasses + suit_store = null + l_pocket = /obj/item/restraints/handcuffs + backpack_contents = list(/obj/item/melee/classic_baton=1) + + backpack = /obj/item/storage/backpack/security + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + box = /obj/item/storage/box/survival/security + + chameleon_extras = list(/obj/item/gun/energy/e_gun/hos, /obj/item/stamp/hos) + +// Roboticist + +/datum/outfit/job/independent/roboticist + name = "Independent - Roboticist" + job_icon = "roboticist" + jobtype = /datum/job/roboticist + + belt = /obj/item/storage/belt/utility/full + ears = /obj/item/radio/headset/headset_sci + uniform = /obj/item/clothing/under/rank/rnd/roboticist + suit = /obj/item/clothing/suit/toggle/labcoat + alt_suit = /obj/item/clothing/suit/toggle/suspenders/gray + dcoat = /obj/item/clothing/suit/hooded/wintercoat/science + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + +// Security Officer + +/datum/outfit/job/independent/security + name = "Independent - Security Officer" + jobtype = /datum/job/officer + job_icon = "securityofficer" + + ears = /obj/item/radio/headset/alt + uniform = /obj/item/clothing/under/rank/security/officer + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/helmet/sec + suit = /obj/item/clothing/suit/armor/vest/alt + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + shoes = /obj/item/clothing/shoes/jackboots + l_pocket = /obj/item/restraints/handcuffs + backpack_contents = null + + backpack = /obj/item/storage/backpack/security + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + box = /obj/item/storage/box/survival/security + + chameleon_extras = list(/obj/item/gun/energy/disabler, /obj/item/clothing/glasses/hud/security/sunglasses, /obj/item/clothing/head/helmet) + //The helmet is necessary because /obj/item/clothing/head/helmet/sec is overwritten in the chameleon list by the standard helmet, which has the same name and icon state + +/datum/outfit/job/independent/security/western + name = "Independent - Security Officer (Western)" + + uniform = /obj/item/clothing/under/rank/security/officer/blueshirt + shoes = /obj/item/clothing/shoes/jackboots + glasses = /obj/item/clothing/glasses/hud/security/sunglasses + head = /obj/item/clothing/head/cowboy/sec + +/datum/outfit/job/independent/security/pirate + name = "Independent - Security Officer (Pirate)" + + uniform = /obj/item/clothing/under/syndicate/camo + shoes = /obj/item/clothing/shoes/jackboots + head = /obj/item/clothing/head/bandana + suit = /obj/item/clothing/suit/armor/vest + +/datum/outfit/job/independent/security/pirate/jupiter + name = "Independent - Security Officer (Nodesman)" // technically, this is part of SEC, but we have jackshit for SEC + + uniform = /obj/item/clothing/under/utility + head = /obj/item/clothing/head/soft/black + shoes = /obj/item/clothing/shoes/combat + l_pocket = /obj/item/kitchen/knife/combat + + backpack_contents = list(/obj/item/melee/baton/loaded=1) + + implants = list(/obj/item/implant/radio) + +// Engineer + +/datum/outfit/job/independent/engineer + name = "Independent - Engineer" + job_icon = "stationengineer" + jobtype = /datum/job/engineer + + belt = /obj/item/storage/belt/utility/full/engi + l_pocket = /obj/item/storage/wallet + gloves = /obj/item/clothing/gloves/color/yellow + ears = /obj/item/radio/headset/headset_eng + uniform = /obj/item/clothing/under/rank/engineering/engineer + alt_uniform = /obj/item/clothing/under/rank/engineering/engineer/hazard + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + shoes = /obj/item/clothing/shoes/workboots + head = /obj/item/clothing/head/hardhat/dblue + l_pocket = /obj/item/t_scanner + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + box = /obj/item/storage/box/survival/engineer + backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) + +/datum/outfit/job/independent/engineer/salvage + name = "Independent - Engineer (Salvager)" + + belt = null + l_pocket = null + +/datum/outfit/job/independent/engineer/pirate + name = "Independent - Engineer (Pirate)" + + uniform = /obj/item/clothing/under/costume/sailor + head = /obj/item/clothing/head/bandana + shoes = /obj/item/clothing/shoes/jackboots + +/datum/outfit/job/independent/engineer/pirate/jupiter + name = "Independent - Engineer (Nodesman)" // technically, this is part of SEC, but we have jackshit for SEC + + uniform = /obj/item/clothing/under/utility + head = /obj/item/clothing/head/soft/black + shoes = /obj/item/clothing/shoes/combat + l_pocket = /obj/item/kitchen/knife/combat/survival + gloves = /obj/item/clothing/gloves/combat + + implants = list(/obj/item/implant/radio) + +// Warden + +/datum/outfit/job/independent/warden + name = "Independent - Warden" + job_icon = "warden" + jobtype = /datum/job/warden + + ears = /obj/item/radio/headset/headset_sec/alt + uniform = /obj/item/clothing/under/rank/security/warden + shoes = /obj/item/clothing/shoes/jackboots + suit = /obj/item/clothing/suit/armor/vest/security/warden + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/warden + glasses = /obj/item/clothing/glasses/hud/security + l_pocket = /obj/item/restraints/handcuffs + suit_store = null + backpack_contents = list(/obj/item/melee/classic_baton) + + backpack = /obj/item/storage/backpack/security + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + box = /obj/item/storage/box/survival/security + + chameleon_extras = /obj/item/gun/ballistic/shotgun/automatic/combat/compact + +// Chief Engineer + +/datum/outfit/job/independent/ce + name = "Independent - Chief Engineer" + jobtype = /datum/job/chief_engineer + job_icon = "chiefengineer" + + id = /obj/item/card/id/silver + belt = /obj/item/storage/belt/utility/chief/full + l_pocket = /obj/item/storage/wallet + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/engineering/chief_engineer + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + shoes = /obj/item/clothing/shoes/sneakers/brown + head = /obj/item/clothing/head/hardhat/white + gloves = /obj/item/clothing/gloves/color/black + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced=1) + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + box = /obj/item/storage/box/survival/engineer + chameleon_extras = /obj/item/stamp/ce + +// Medical Doctor + +/datum/outfit/job/independent/doctor + name = "Independent - Medical Doctor" + job_icon = "medicaldoctor" + jobtype = /datum/job/doctor + + ears = /obj/item/radio/headset/headset_med + uniform = /obj/item/clothing/under/rank/medical/doctor/blue + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/apron/surgical + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/med + + box = /obj/item/storage/box/survival/medical + + chameleon_extras = /obj/item/gun/syringe + +/datum/outfit/job/independent/doctor/pirate + +// Cargo Tech + +/datum/outfit/job/independent/cargo_tech + name = "Independent - Cargo Tech" + jobtype = /datum/job/cargo_tech + job_icon = "cargotechnician" + + ears = /obj/item/radio/headset/headset_cargo + uniform = /obj/item/clothing/under/color/khaki + dcoat = /obj/item/clothing/suit/hooded/wintercoat/cargo + backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) + +// Atmos Tech + +/datum/outfit/job/independent/atmos + name = "Independent - Atmos Tech" + jobtype = /datum/job/atmos + job_icon = "atmospherictechnician" + + belt = /obj/item/storage/belt/utility/atmostech + ears = /obj/item/radio/headset/headset_eng + uniform = /obj/item/clothing/under/rank/engineering/engineer/hazard + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + l_pocket = /obj/item/analyzer + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + box = /obj/item/storage/box/survival/engineer + + backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) + +// Scientist + +/datum/outfit/job/independent/scientist + name = "Independent - Scientist" + jobtype = /datum/job/scientist + job_icon = "scientist" + + ears = /obj/item/radio/headset/headset_sci + uniform = /obj/item/clothing/under/rank/rnd/scientist + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/toggle/labcoat/science + alt_suit = /obj/item/clothing/suit/toggle/suspenders/blue + dcoat = /obj/item/clothing/suit/hooded/wintercoat/science + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + +// Brig Physician + +/datum/outfit/job/independent/brig_phys + name = "Independent - Brig Physician" + jobtype = /datum/job/brig_phys + job_icon = "brigphysician" + + ears = /obj/item/radio/headset/headset_medsec/alt + uniform = /obj/item/clothing/under/rank/security/brig_phys + shoes = /obj/item/clothing/shoes/sneakers/white + glasses = /obj/item/clothing/glasses/hud/health + suit = /obj/item/clothing/suit/toggle/labcoat/brig_phys + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + head = /obj/item/clothing/head/soft/sec/brig_phys + +// Paramedic + +/datum/outfit/job/independent/paramedic + name = "Independent - Paramedic" + jobtype = /datum/job/paramedic + job_icon = "paramedic" + + ears = /obj/item/radio/headset/headset_med + uniform = /obj/item/clothing/under/rank/medical/paramedic/emt + head = /obj/item/clothing/head/soft/paramedic + shoes = /obj/item/clothing/shoes/sneakers/blue + suit = /obj/item/clothing/suit/toggle/labcoat/paramedic + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical/paramedic + gloves = /obj/item/clothing/gloves/color/latex + + backpack_contents = list(/obj/item/roller=1) + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/para + + box = /obj/item/storage/box/survival/medical + + chameleon_extras = /obj/item/gun/syringe + +// Quartermaster + +/datum/outfit/job/independent/quartermaster + name = "Independent - Quartermaster" + jobtype = /datum/job/qm + job_icon = "quartermaster" + + ears = /obj/item/radio/headset/headset_cargo + uniform = /obj/item/clothing/under/rank/cargo/qm + head = /obj/item/clothing/head/supply_chief + dcoat = /obj/item/clothing/suit/hooded/wintercoat/cargo + shoes = /obj/item/clothing/shoes/sneakers/brown + glasses = /obj/item/clothing/glasses/sunglasses + l_hand = /obj/item/clipboard + backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) + + chameleon_extras = /obj/item/stamp/qm + +/datum/outfit/job/independent/quartermaster/western + name = "Independent - Quartermaster (Western)" + + uniform = /obj/item/clothing/under/rank/cargo/qm + suit = /obj/item/clothing/suit/toggle/hazard + shoes = /obj/item/clothing/shoes/workboots + glasses = /obj/item/clothing/glasses/sunglasses + head = /obj/item/clothing/head/cowboy/sec + +/datum/outfit/job/independent/miner + name = "Independent - Miner" + jobtype = /datum/job/mining + job_icon = "shaftminer" + + ears = /obj/item/radio/headset/headset_cargo/mining + shoes = /obj/item/clothing/shoes/workboots/mining + gloves = /obj/item/clothing/gloves/explorer + uniform = /obj/item/clothing/under/rank/cargo/miner + suit = /obj/item/clothing/suit/hazardvest + dcoat = /obj/item/clothing/suit/hooded/wintercoat/miner + l_pocket = /obj/item/storage/bag/ore + backpack_contents = list( + /obj/item/flashlight/seclite=1,\ + /obj/item/kitchen/knife/combat/survival=1,\ + /obj/item/stack/marker_beacon/ten=1,\ + /obj/item/radio/weather_monitor=1) + + backpack = /obj/item/storage/backpack/explorer + satchel = /obj/item/storage/backpack/satchel/explorer + duffelbag = /obj/item/storage/backpack/duffelbag + box = /obj/item/storage/box/survival/mining + + chameleon_extras = /obj/item/gun/energy/kinetic_accelerator + +/datum/outfit/job/independent/miner/hazard + name = "Independent - Miner (Hazard Uniform)" + + uniform = /obj/item/clothing/under/rank/cargo/miner/hazard + alt_uniform = null + alt_suit = /obj/item/clothing/suit/toggle/hazard + +/datum/outfit/job/independent/miner/scientist + name = "Independent - Miner (Minerologist)" + + uniform = /obj/item/clothing/under/rank/cargo/miner/hazard + alt_uniform = /obj/item/clothing/under/rank/rnd/roboticist + suit = /obj/item/clothing/suit/toggle/labcoat/science + alt_suit = /obj/item/clothing/suit/toggle/hazard + dcoat = /obj/item/clothing/suit/hooded/wintercoat/science + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + +// Cook + +/datum/outfit/job/independent/cook + name = "Independent - Cook" + jobtype = /datum/job/cook + job_icon = "cook" + + ears = /obj/item/radio/headset/headset_srv + uniform = /obj/item/clothing/under/rank/civilian/chef //WS Edit - Alt Uniforms + suit = /obj/item/clothing/suit/toggle/chef + alt_suit = /obj/item/clothing/suit/apron/chef + head = /obj/item/clothing/head/chefhat + mask = /obj/item/clothing/mask/fakemoustache/italian + backpack_contents = list(/obj/item/sharpener = 1) + +/datum/outfit/job/independent/cook/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + ..() + if(visualsOnly) + return + var/list/possible_boxes = subtypesof(/obj/item/storage/box/ingredients) + var/chosen_box = pick(possible_boxes) + var/obj/item/storage/box/I = new chosen_box(src) + H.equip_to_slot_or_del(I,ITEM_SLOT_BACKPACK) + var/datum/martial_art/cqc/under_siege/justacook = new + justacook.teach(H) + +// Bartender + +/datum/outfit/job/independent/bartender + name = "Independent - Bartender" + + glasses = /obj/item/clothing/glasses/sunglasses/reagent + ears = /obj/item/radio/headset/headset_srv + uniform = /obj/item/clothing/under/rank/civilian/bartender + alt_uniform = /obj/item/clothing/under/rank/civilian/bartender/purple + alt_suit = /obj/item/clothing/suit/apron/purple_bartender + suit = /obj/item/clothing/suit/armor/vest + backpack_contents = list(/obj/item/storage/box/beanbag=1) + shoes = /obj/item/clothing/shoes/laceup + +/datum/outfit/job/independent/bartender/pharma + name = "Independent - Bartender (Mixologist)" + + backpack_contents = list(/obj/item/storage/box/syringes=1, /obj/item/storage/box/drinkingglasses = 1) + ears = /obj/item/radio/headset/headset_med + suit = /obj/item/clothing/suit/toggle/labcoat + l_pocket = /obj/item/reagent_containers/food/drinks/shaker + belt = /obj/item/storage/belt + gloves = /obj/item/clothing/gloves/color/latex/nitrile + uniform = /obj/item/clothing/under/suit/black + +// Lawyer + +/datum/outfit/job/independent/lawyer + name = "Independent - Lawyer" + job_icon = "lawyer" + jobtype = /datum/job/lawyer + + ears = /obj/item/radio/headset/headset_srvsec + uniform = /obj/item/clothing/under/rank/civilian/lawyer/bluesuit + suit = /obj/item/clothing/suit/toggle/lawyer + shoes = /obj/item/clothing/shoes/laceup + l_hand = /obj/item/storage/briefcase/lawyer + l_pocket = /obj/item/clothing/accessory/lawyers_badge + + chameleon_extras = /obj/item/stamp/law + +// Curator + +/datum/outfit/job/independent/curator + name = "Independent - Curator" + job_icon = "curator" + jobtype = /datum/job/curator + + shoes = /obj/item/clothing/shoes/laceup + ears = /obj/item/radio/headset/headset_srv + uniform = /obj/item/clothing/under/rank/civilian/curator + l_hand = /obj/item/storage/bag/books + l_pocket = /obj/item/key/displaycase + accessory = /obj/item/clothing/accessory/pocketprotector/full + backpack_contents = list( + /obj/item/choice_beacon/hero = 1, + /obj/item/barcodescanner = 1 + ) + +/datum/outfit/job/independent/curator/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + ..() + + if(visualsOnly) + return + + H.grant_all_languages(TRUE, TRUE, TRUE, LANGUAGE_CURATOR) + +/datum/outfit/job/independent/curator/dungeonmaster + + +// Chaplain + +/datum/outfit/job/independent/chaplain + name = "Independent - Chaplain" + job_icon = "chaplain" + jobtype = /datum/job/chaplain + + ears = /obj/item/radio/headset/headset_srv + uniform = /obj/item/clothing/under/rank/civilian/chaplain + backpack_contents = list( + /obj/item/stamp/chap = 1, + /obj/item/camera/spooky = 1 + ) + + backpack = /obj/item/storage/backpack/cultpack + satchel = /obj/item/storage/backpack/cultpack + + chameleon_extras = /obj/item/stamp/chap + +// Chemist + +/datum/outfit/job/independent/chemist + name = "Independent - Chemist" + job_icon = "chemist" + jobtype = /datum/job/chemist + + glasses = /obj/item/clothing/glasses/science + ears = /obj/item/radio/headset/headset_med + uniform = /obj/item/clothing/under/rank/medical/chemist + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/toggle/labcoat/chemist + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical + + backpack = /obj/item/storage/backpack/chemistry + satchel = /obj/item/storage/backpack/satchel/chem + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/chem + + box = /obj/item/storage/box/survival/medical + + chameleon_extras = /obj/item/gun/syringe + +/datum/outfit/job/independent/chemist/pharma + +// Janitor + +/datum/outfit/job/independent/janitor + name = "Independent - Janitor" + job_icon = "janitor" + jobtype = /datum/job/janitor + + ears = /obj/item/radio/headset/headset_srv + uniform = /obj/item/clothing/under/rank/civilian/janitor + + backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) + +// Research Director + +/datum/outfit/job/independent/rd + name = "Independent - Research Director" + job_icon = "researchdirector" + jobtype = /datum/job/rd + + id = /obj/item/card/id/silver + ears = /obj/item/radio/headset/heads/rd + uniform = /obj/item/clothing/under/rank/rnd/research_director/turtleneck + shoes = /obj/item/clothing/shoes/sneakers/brown + suit = /obj/item/clothing/suit/toggle/labcoat + alt_suit = /obj/item/clothing/suit/toggle/suspenders + dcoat = /obj/item/clothing/suit/hooded/wintercoat/science //WS Edit - Alt Uniforms + l_hand = /obj/item/clipboard + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced=1) + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + + chameleon_extras = /obj/item/stamp/rd + +// Chief Medical Officer + +/datum/outfit/job/independent/cmo + name = "Independent - Chief Medical Officer" + job_icon = "chiefmedicalofficer" + jobtype = /datum/job/cmo + + id = /obj/item/card/id/silver + l_pocket = /obj/item/pinpointer/crew + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/medical/doctor/blue + shoes = /obj/item/clothing/shoes/sneakers/brown + suit = /obj/item/clothing/suit/toggle/labcoat/cmo + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1) + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/med + + box = /obj/item/storage/box/survival/medical + + chameleon_extras = list(/obj/item/gun/syringe, /obj/item/stamp/cmo) + +/datum/outfit/job/independent/cmo/pharma + +// Detective + +/datum/outfit/job/independent/detective + name = "Independent - Detective" + job_icon = "detective" + jobtype = /datum/job/detective + + ears = /obj/item/radio/headset/headset_sec/alt + uniform = /obj/item/clothing/under/rank/security/detective + neck = /obj/item/clothing/neck/tie/detective + shoes = /obj/item/clothing/shoes/sneakers/brown + suit = /obj/item/clothing/suit/det_suit + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/fedora/det_hat + l_pocket = /obj/item/toy/crayon/white + backpack_contents = list(/obj/item/storage/box/evidence=1,\ + /obj/item/detective_scanner=1,\ + /obj/item/melee/classic_baton=1) + mask = /obj/item/clothing/mask/cigarette + + implants = list(/obj/item/implant/mindshield) + + chameleon_extras = list(/obj/item/gun/ballistic/revolver/detective, /obj/item/clothing/glasses/sunglasses) + +/datum/outfit/job/independent/detective/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + ..() + var/obj/item/clothing/mask/cigarette/cig = H.wear_mask + if(istype(cig)) //Some species specfic changes can mess this up (plasmamen) + cig.light("") + + if(visualsOnly) + return + +// Botanist + +/datum/outfit/job/independent/botanist + name = "Independent - Botanist" + job_icon = "botanist" + jobtype = /datum/job/hydro + + ears = /obj/item/radio/headset/headset_srv + uniform = /obj/item/clothing/under/color/green + dcoat = /obj/item/clothing/suit/hooded/wintercoat/hydro + suit = /obj/item/clothing/suit/apron/overalls + gloves =/obj/item/clothing/gloves/botanic_leather + suit_store = /obj/item/plant_analyzer + + backpack = /obj/item/storage/backpack/botany + satchel = /obj/item/storage/backpack/satchel/hyd + courierbag = /obj/item/storage/backpack/messenger/hyd + +/datum/outfit/job/independent/botanist/pharma + name = "Independent - Botanist (Herbalist)" + + ears = /obj/item/radio/headset/headset_med + belt = /obj/item/storage/bag/plants + suit = /obj/item/clothing/suit/apron/overalls + uniform = /obj/item/clothing/under/utility diff --git a/code/modules/clothing/outfits/factions/inteq.dm b/code/modules/clothing/outfits/factions/inteq.dm new file mode 100644 index 000000000000..79acfa569804 --- /dev/null +++ b/code/modules/clothing/outfits/factions/inteq.dm @@ -0,0 +1,195 @@ +/datum/outfit/job/inteq + name = "IRMG - Base Outfit" + faction_icon = "bg_inteq" + + uniform = /obj/item/clothing/under/syndicate/inteq + box = /obj/item/storage/box/survival + + backpack = /obj/item/storage/backpack + satchel = /obj/item/storage/backpack/satchel + duffelbag = /obj/item/storage/backpack/duffelbag + courierbag = /obj/item/storage/backpack/messenger/inteq + +/datum/outfit/job/inteq/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + if(visualsOnly) + return + H.faction |= list(FACTION_PLAYER_INTEQ) + +///assistants + +/datum/outfit/job/inteq/assistant + name = "IRMG - Recruit" + jobtype = /datum/job/assistant + job_icon = "assistant" + + r_pocket = /obj/item/radio + +///captains + +/datum/outfit/job/inteq/captain + name = "IRMG - Vanguard (Naked)" + jobtype = /datum/job/captain + job_icon = "captain" + + ears = /obj/item/radio/headset/inteq/alt/captain + shoes = /obj/item/clothing/shoes/combat + r_pocket = /obj/item/assembly/flash/handheld + l_pocket = /obj/item/restraints/handcuffs + jobtype = /datum/job/captain + id = /obj/item/card/id/gold + + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1) + +/datum/outfit/job/inteq/captain/geared + name = "IRMG - Vanguard" + + head = /obj/item/clothing/head/beret/sec/hos/inteq + glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq + mask = /obj/item/clothing/mask/gas/sechailer/inteq + belt = /obj/item/storage/belt/security/webbing/inteq + suit = /obj/item/clothing/suit/armor/hos/inteq + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq + gloves = /obj/item/clothing/gloves/combat + accessory = null + +/datum/outfit/job/inteq/captain/honorable + name = "IRMG - Honorable Vanguard" + + head = /obj/item/clothing/head/beret/sec/hos/inteq/honorable + uniform = /obj/item/clothing/under/syndicate/inteq/honorable + suit = /obj/item/clothing/suit/armor/hos/inteq/honorable + gloves = /obj/item/clothing/gloves/combat + shoes = /obj/item/clothing/shoes/combat + ears = /obj/item/radio/headset/inteq/alt/captain + belt = /obj/item/storage/belt/military/assault + glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq + +/datum/outfit/job/inteq/captain/honorable/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + if(visualsOnly) + return + + var/obj/item/card/id/W = H.wear_id + W.assignment = "Honorable Vanguard" + W.update_label() + ..() + +///Chief Engineer + +/datum/outfit/job/inteq/ce + name = "IRMG - Artificer Class II" + job_icon = "chiefengineer" + jobtype = /datum/job/chief_engineer + + ears = /obj/item/radio/headset/inteq + uniform = /obj/item/clothing/under/syndicate/inteq/artificer + head = /obj/item/clothing/head/hardhat/white + mask = /obj/item/clothing/mask/gas/sechailer/inteq + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq + shoes = /obj/item/clothing/shoes/combat + gloves = /obj/item/clothing/gloves/combat + belt = /obj/item/storage/belt/utility/full + + id = /obj/item/card/id/silver + belt = /obj/item/storage/belt/utility/chief/full + + courierbag = /obj/item/storage/backpack/messenger/inteq + + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced=1) + +///paramedic + +/datum/outfit/job/inteq/paramedic + name = "IRMG - Corpsman" + job_icon = "paramedic" + jobtype = /datum/job/paramedic + + uniform = /obj/item/clothing/under/syndicate/inteq/corpsman + head = /obj/item/clothing/head/soft/inteq/corpsman + suit = /obj/item/clothing/suit/armor/inteq/corpsman + shoes = /obj/item/clothing/shoes/combat + belt = /obj/item/storage/belt/medical/webbing/paramedic + ears = /obj/item/radio/headset/headset_medsec/alt + + suit_store = /obj/item/flashlight/pen + backpack_contents = list(/obj/item/roller=1) + +///Security Officers + +/datum/outfit/job/inteq/security + name = "IRMG - Enforcer" + jobtype = /datum/job/officer + job_icon = "securityofficer" + + head = /obj/item/clothing/head/helmet/inteq + suit = /obj/item/clothing/suit/armor/vest/alt + belt = /obj/item/storage/belt/security/webbing/inteq + mask = /obj/item/clothing/mask/gas/sechailer/inteq + uniform = /obj/item/clothing/under/syndicate/inteq + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq + shoes = /obj/item/clothing/shoes/combat + glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq + gloves = /obj/item/clothing/gloves/combat + + backpack = /obj/item/storage/backpack/messenger/inteq + satchel = /obj/item/storage/backpack/messenger/inteq + courierbag = /obj/item/storage/backpack/messenger/inteq + +/datum/outfit/job/inteq/security/beluga + name = "IRMG - Enforcer (Beluga)" + + head = /obj/item/clothing/head/beret/sec/inteq + accessory = /obj/item/clothing/accessory/waistcoat + suit = null + belt = null + mask = null + shoes = /obj/item/clothing/shoes/laceup + glasses = null + gloves = /obj/item/clothing/gloves/color/evening + + backpack = /obj/item/storage/backpack/messenger/inteq + satchel = /obj/item/storage/backpack/messenger/inteq + courierbag = /obj/item/storage/backpack/messenger/inteq + +/datum/outfit/job/inteq/security/empty + name = "IRMG - Enforcer (Naked)" + head = null + suit = null + belt = null + mask = null + gloves = null + +///engineers + +/datum/outfit/job/inteq/engineer + name = "IRMG - Artificer" + job_icon = "stationengineer" + jobtype = /datum/job/engineer + + uniform = /obj/item/clothing/under/syndicate/inteq/artificer + head = /obj/item/clothing/head/soft/inteq + shoes = /obj/item/clothing/shoes/combat + belt = /obj/item/storage/belt/utility/full/engi + r_pocket = /obj/item/t_scanner + +//wardens + +/datum/outfit/job/inteq/warden + name = "IRMG - Master At Arms" + jobtype = /datum/job/warden + job_icon = "warden" + + ears = /obj/item/radio/headset/inteq/alt + uniform = /obj/item/clothing/under/syndicate/inteq + head = /obj/item/clothing/head/beret/sec/hos/inteq + glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq + mask = /obj/item/clothing/mask/gas/sechailer/inteq + belt = /obj/item/storage/belt/military/assault + suit = /obj/item/clothing/suit/armor/vest/alt + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq + shoes = /obj/item/clothing/shoes/combat + gloves = /obj/item/clothing/gloves/combat + suit_store = null + + courierbag = /obj/item/storage/backpack/messenger/inteq + backpack_contents = list(/obj/item/melee/classic_baton=1) diff --git a/code/modules/clothing/outfits/factions/minutemen.dm b/code/modules/clothing/outfits/factions/minutemen.dm new file mode 100644 index 000000000000..0b991268c408 --- /dev/null +++ b/code/modules/clothing/outfits/factions/minutemen.dm @@ -0,0 +1,352 @@ +//top outfit of everything Minuteman. Touch at own risk. + +/datum/outfit/job/minutemen + name = "Minutemen - Base Outfit" + + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + alt_uniform = null + + faction_icon = "bg_minutemen" + + backpack = /obj/item/storage/backpack/security/cmm + satchel = /obj/item/storage/backpack/satchel/sec/cmm + duffelbag = /obj/item/storage/backpack/duffelbag //to-do: bug rye for cmm duffles // rye. rye. give me 20 pound bag of ice + satchel = /obj/item/storage/backpack/messenger //and these + + box = /obj/item/storage/box/survival + +/datum/outfit/job/minutemen/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + if(visualsOnly) + return + H.faction |= list(FACTION_PLAYER_MINUTEMAN) + +///assistant + +/datum/outfit/job/minutemen/assistant + name = "Minutemen - Volunteer" + job_icon = "assistant" + jobtype = /datum/job/assistant + + r_pocket = /obj/item/radio + +///captains + +/datum/outfit/job/minutemen/captain + name = "Minutemen - Captain" + job_icon = "captain" + jobtype = /datum/job/captain + + id = /obj/item/card/id/gold + gloves = /obj/item/clothing/gloves/color/captain + + + backpack = /obj/item/storage/backpack/captain + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + + accessory = /obj/item/clothing/accessory/medal/gold/captain + + ears = /obj/item/radio/headset/minutemen/alt/captain + uniform = /obj/item/clothing/under/rank/command/minutemen + alt_uniform = null + suit = /obj/item/clothing/suit/toggle/lawyer/minutemen + alt_suit = null + dcoat = /obj/item/clothing/suit/hooded/wintercoat/captain + + shoes = /obj/item/clothing/shoes/combat + head = /obj/item/clothing/head/cowboy/sec/minutemen + backpack = /obj/item/storage/backpack + backpack_contents = list(/obj/item/storage/box/ids=1,\ + /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) + +/datum/outfit/job/minutemen/captain/general + name = "Minutemen - General" + + head = /obj/item/clothing/head/caphat/minutemen + ears = /obj/item/radio/headset/minutemen/alt/captain + uniform = /obj/item/clothing/under/rank/command/minutemen + suit = /obj/item/clothing/suit/armor/vest/capcarapace/minutemen + shoes = /obj/item/clothing/shoes/combat + + box = /obj/item/storage/box/survival/engineer/radio + backpack = /obj/item/storage/backpack + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/gun/ballistic/revolver/mateba=1) + +///chemist + +/datum/outfit/job/minutemen/chemist + name = "Minutemen - Chemical Scientist" + job_icon = "chemist" + jobtype = /datum/job/chemist + + glasses = /obj/item/clothing/glasses/science + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/toggle/labcoat/chemist + + backpack = /obj/item/storage/backpack/chemistry + satchel = /obj/item/storage/backpack/satchel/chem + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/chem + + box = /obj/item/storage/box/survival/medical + chameleon_extras = /obj/item/gun/syringe + +///Chief Engineer + +/datum/outfit/job/minutemen/ce + name = "Minutemen - Foreman" + job_icon = "chiefengineer" + jobtype = /datum/job/chief_engineer + + id = /obj/item/card/id/silver + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + box = /obj/item/storage/box/survival/engineer + + chameleon_extras = /obj/item/stamp/ce + + + ears = /obj/item/radio/headset/minutemen/alt + uniform = /obj/item/clothing/under/rank/command/minutemen + alt_uniform = null + suit = /obj/item/clothing/suit/toggle/lawyer/minutemen + alt_suit = null + gloves = /obj/item/clothing/gloves/combat + belt = /obj/item/storage/belt/utility/full + shoes = /obj/item/clothing/shoes/combat + head = /obj/item/clothing/head/cowboy/sec/minutemen + backpack = /obj/item/storage/backpack + backpack_contents = list( + /obj/item/melee/classic_baton/telescopic=1, + /obj/item/modular_computer/tablet/preset/advanced = 1 + ) + +/// Head Of Personnel + +/datum/outfit/job/minutemen/head_of_personnel + name = "Minutemen - Bridge Officer" + job_icon = "headofpersonnel" + jobtype = /datum/job/head_of_personnel + + id = /obj/item/card/id/silver + + backpack = /obj/item/storage/backpack/captain + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + + chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/head_of_personnel) + + ears = /obj/item/radio/headset/minutemen/alt + uniform = /obj/item/clothing/under/rank/command/minutemen + alt_uniform = null + suit = /obj/item/clothing/suit/toggle/lawyer/minutemen + alt_suit = null + + shoes = /obj/item/clothing/shoes/combat + head = /obj/item/clothing/head/cowboy/sec/minutemen + backpack = /obj/item/storage/backpack + backpack_contents = list(/obj/item/storage/box/ids=1,\ + /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) + +/// Medical Doctor +/datum/outfit/job/minutemen/doctor + name = "Minutemen - Field Medic" + job_icon = "medicaldoctor" + jobtype = /datum/job/doctor + + l_hand = /obj/item/storage/firstaid/medical + suit_store = /obj/item/flashlight/pen + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/med + box = /obj/item/storage/box/survival/medical + + chameleon_extras = /obj/item/gun/syringe + + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + accessory = /obj/item/clothing/accessory/armband/medblue + shoes = /obj/item/clothing/shoes/sneakers/white + head = /obj/item/clothing/head/beret/med + suit = null + suit_store = null + +///paramedic +/datum/outfit/job/minutemen/paramedic + name = "Minutemen - BARD Combat Medic" + job_icon = "paramedic" + jobtype = /datum/job/paramedic + + + uniform = /obj/item/clothing/under/rank/medical/paramedic/emt + head = /obj/item/clothing/head/soft/paramedic + suit = /obj/item/clothing/suit/armor/vest + shoes = /obj/item/clothing/shoes/sneakers/blue + gloves = /obj/item/clothing/gloves/color/latex/nitrile + belt = /obj/item/storage/belt/medical/paramedic + suit_store = /obj/item/flashlight/pen + backpack_contents = list(/obj/item/roller=1) + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/para + + box = /obj/item/storage/box/survival/medical + +///roboticist +/datum/outfit/job/minutemen/roboticist + name = "Minutemen - Mech Technician" + job_icon = "roboticist" + jobtype = /datum/job/roboticist + + belt = /obj/item/storage/belt/utility/full + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + + + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + shoes = /obj/item/clothing/shoes/combat + ears = /obj/item/radio/headset/minutemen + suit = /obj/item/clothing/suit/toggle/labcoat/science + alt_suit = /obj/item/clothing/suit/toggle/suspenders/gray + +///scientist +/datum/outfit/job/minutemen/scientist + name = "Minutemen - Scientist" + job_icon = "scientist" + jobtype = /datum/job/scientist + + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + backpack = /obj/item/storage/backpack/security/cmm + + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/toggle/labcoat/science + alt_suit = /obj/item/clothing/suit/toggle/suspenders/blue + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + +//security officers + +/datum/outfit/job/minutemen/security + name = "Minutemen - Minuteman" + job_icon = "securityofficer" + jobtype = /datum/job/officer + + head = /obj/item/clothing/head/helmet/bulletproof/minutemen + mask = /obj/item/clothing/mask/gas/sechailer/minutemen + suit = /obj/item/clothing/suit/armor/vest/bulletproof + alt_suit = null + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + alt_uniform = null + shoes = /obj/item/clothing/shoes/combat + gloves = /obj/item/clothing/gloves/combat + ears = /obj/item/radio/headset/alt + + belt = /obj/item/storage/belt/military/minutemen + + l_pocket = /obj/item/flashlight/seclite + r_pocket = /obj/item/tank/internals/emergency_oxygen/double + box = /obj/item/storage/box/survival/engineer/radio + backpack_contents = null + +/datum/outfit/job/minutemen/security/armed + name = "Minutemen - Minuteman (Armed)" + + suit_store = /obj/item/gun/ballistic/automatic/assault/p16/minutemen + belt = /obj/item/storage/belt/military/minutemen/p16 + +/datum/outfit/job/minutemen/security/mech_pilot + name = "Minutemen - Mech Pilot" + + suit = /obj/item/clothing/suit/armor/vest/alt + gloves = /obj/item/clothing/gloves/tackler/combat/insulated + glasses = /obj/item/clothing/glasses/hud/diagnostic + +///miners + +/datum/outfit/job/minutemen/miner + name = "Minutemen - Industrial Miner" + job_icon = "shaftminer" + jobtype = /datum/job/mining + + l_pocket = /obj/item/reagent_containers/hypospray/medipen/survival + uniform = /obj/item/clothing/under/rank/cargo/miner/hazard + alt_uniform = null + alt_suit = /obj/item/clothing/suit/toggle/hazard + + gloves = /obj/item/clothing/gloves/color/black + shoes = /obj/item/clothing/shoes/combat + backpack_contents = list( + /obj/item/flashlight/seclite=1, + /obj/item/stack/marker_beacon/ten=1, + /obj/item/weldingtool=1 + ) + +///engineers + +/datum/outfit/job/minutemen/engineer + name = "Minutemen - Mechanic" + job_icon = "stationengineer" + jobtype = /datum/job/engineer + + belt = /obj/item/storage/belt/utility/full/engi + shoes = /obj/item/clothing/shoes/workboots + r_pocket = /obj/item/t_scanner + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + accessory = /obj/item/clothing/accessory/armband/engine + head = /obj/item/clothing/head/hardhat/dblue + suit = /obj/item/clothing/suit/hazardvest + + box = /obj/item/storage/box/survival/engineer + backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) + + +///warden + +/datum/outfit/job/minutemen/warden + name = "Minutemen - Field Commander" + job_icon = "warden" + jobtype = /datum/job/warden + + glasses = /obj/item/clothing/glasses/sunglasses + ears = /obj/item/radio/headset/minutemen/alt + uniform = /obj/item/clothing/under/rank/security/officer/minutemen + accessory = /obj/item/clothing/accessory/armband + head = /obj/item/clothing/head/cowboy/sec/minutemen + suit = /obj/item/clothing/suit/armor/vest/bulletproof + belt = /obj/item/storage/belt/military/minutemen + shoes = /obj/item/clothing/shoes/combat + + l_pocket = /obj/item/flashlight/seclite + r_pocket = /obj/item/tank/internals/emergency_oxygen/double + + box = /obj/item/storage/box/survival/engineer/radio + backpack = /obj/item/storage/backpack + backpack_contents = null + +/datum/outfit/job/minutemen/warden/armed + name = "Minutemen - Field Commander (Armed)" + + suit_store = /obj/item/gun/ballistic/automatic/assault/p16/minutemen + belt = /obj/item/storage/belt/military/minutemen/p16 + + backpack_contents = list(/obj/item/melee/classic_baton=1, /obj/item/gun/ballistic/automatic/pistol/commander=1, /obj/item/restraints/handcuffs=1, /obj/item/gun/energy/e_gun/advtaser=1) diff --git a/code/modules/clothing/outfits/factions/nanotrasen.dm b/code/modules/clothing/outfits/factions/nanotrasen.dm new file mode 100644 index 000000000000..409a8dd55d47 --- /dev/null +++ b/code/modules/clothing/outfits/factions/nanotrasen.dm @@ -0,0 +1,546 @@ +/datum/outfit/job/nanotrasen + name = "Nanotrasen - Base Outfit" + faction_icon = "bg_nanotrasen" + + box = /obj/item/storage/box/survival + id = /obj/item/card/id + + +/datum/outfit/job/nanotrasen/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + if(visualsOnly) + return + H.faction |= list(FACTION_PLAYER_NANOTRASEN) + +// Assistant + +/datum/outfit/job/nanotrasen/assistant + name = "Nanotrasen - Assistant" + jobtype = /datum/job/assistant + job_icon = "assistant" + + uniform = /obj/item/clothing/under/color/grey + shoes = /obj/item/clothing/shoes/sneakers/black + belt = /obj/item/pda + +// Captain + +/datum/outfit/job/nanotrasen/captain + name = "Nanotrasen - Captain" + job_icon = "captain" + jobtype = /datum/job/captain + + id = /obj/item/card/id/gold + belt = /obj/item/pda/captain + gloves = /obj/item/clothing/gloves/color/captain/nt + ears = /obj/item/radio/headset/nanotrasen/captain + uniform = /obj/item/clothing/under/rank/command/captain/nt + alt_uniform = /obj/item/clothing/under/rank/command/captain/parade + dcoat = /obj/item/clothing/suit/hooded/wintercoat/captain + shoes = /obj/item/clothing/shoes/laceup + head = /obj/item/clothing/head/caphat/nt + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1) + + backpack = /obj/item/storage/backpack/captain + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + + accessory = /obj/item/clothing/accessory/medal/gold/captain + + chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/captain) + +/datum/outfit/job/nanotrasen/captain/lp + name = "Nanotrasen - Loss Prevention Lieutenant" + + implants = list(/obj/item/implant/mindshield) + ears = /obj/item/radio/headset/nanotrasen/alt/captain + id = /obj/item/card/id/lplieu + belt = /obj/item/pda/captain + gloves = /obj/item/clothing/gloves/color/black + uniform = /obj/item/clothing/under/rank/security/head_of_security/alt/lp + alt_uniform = /obj/item/clothing/under/rank/security/head_of_security/alt/skirt/lp + dcoat = /obj/item/clothing/suit/jacket + shoes = /obj/item/clothing/shoes/jackboots + head = /obj/item/clothing/head/beret/command + + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + +/datum/outfit/job/nanotrasen/captain/centcom + name = "Nanotrasen - Captain (Central Command)" + + uniform = /obj/item/clothing/under/rank/centcom/officer + gloves = /obj/item/clothing/gloves/combat + head = /obj/item/clothing/head/centhat + +// Head of Personnel + +/datum/outfit/job/nanotrasen/hop + name = "Nanotrasen - Head of Personnel" + job_icon = "headofpersonnel" + jobtype = /datum/job/head_of_personnel + + belt = /obj/item/pda/heads/head_of_personnel + id = /obj/item/card/id/silver + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/command/head_of_personnel/nt + alt_suit = /obj/item/clothing/suit/ianshirt + dcoat = /obj/item/clothing/suit/hooded/wintercoat/captain + shoes = /obj/item/clothing/shoes/laceup + head = /obj/item/clothing/head/hopcap/nt + backpack_contents = list(/obj/item/storage/box/ids=1,\ + /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) + + backpack = /obj/item/storage/backpack/captain + satchel = /obj/item/storage/backpack/satchel/cap + duffelbag = /obj/item/storage/backpack/duffelbag/captain + courierbag = /obj/item/storage/backpack/messenger/com + + chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/head_of_personnel) + +// Head of Security + +/datum/outfit/job/nanotrasen/hos + name = "Nanotrasen - Head of Security" + job_icon = "headofsecurity" + jobtype = /datum/job/hos + + id = /obj/item/card/id/silver + belt = /obj/item/pda/heads/hos + ears = /obj/item/radio/headset/nanotrasen/alt + uniform = /obj/item/clothing/under/rank/security/head_of_security/nt + alt_uniform = null + shoes = /obj/item/clothing/shoes/jackboots + suit = /obj/item/clothing/suit/armor/hos/trenchcoat + alt_suit = /obj/item/clothing/suit/armor/vest/security/hos + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/beret/sec/hos + glasses = /obj/item/clothing/glasses/hud/security/sunglasses + suit_store = null + r_pocket = /obj/item/assembly/flash/handheld + l_pocket = /obj/item/restraints/handcuffs + backpack_contents = list(/obj/item/melee/classic_baton=1) + + backpack = /obj/item/storage/backpack/security + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + box = /obj/item/storage/box/survival/security + + implants = list(/obj/item/implant/mindshield) + + chameleon_extras = list(/obj/item/gun/energy/e_gun/hos, /obj/item/stamp/hos) + +// Roboticist + +/datum/outfit/job/nanotrasen/roboticist + name = "Nanotrasen - Mech Technician" + job_icon = "roboticist" + jobtype = /datum/job/roboticist + + uniform = /obj/item/clothing/under/rank/rnd/roboticist + suit = /obj/item/clothing/suit/longcoat/robowhite + ears = /obj/item/radio/headset/nanotrasen + glasses = /obj/item/clothing/glasses/welding + + backpack_contents = list(/obj/item/weldingtool/hugetank) + +// Pilot. idk + +/datum/outfit/job/nanotrasen/pilot + name = "Nanotrasen - Pilot" + + uniform = /obj/item/clothing/under/rank/security/officer/military + suit = /obj/item/clothing/suit/jacket/leather/duster + glasses = /obj/item/clothing/glasses/hud/spacecop + accessory = /obj/item/clothing/accessory/holster + head = /obj/item/clothing/head/beret/command + +// Lawyer + +/datum/outfit/job/nanotrasen/lawyer + name = "Nanotrasen - Lawyer" + job_icon = "lawyer" + jobtype = /datum/job/lawyer + + ears = /obj/item/radio/headset/headset_srvsec + uniform = /obj/item/clothing/under/suit/navy + suit = /obj/item/clothing/suit/toggle/lawyer/navy + shoes = /obj/item/clothing/shoes/laceup + l_hand = /obj/item/storage/briefcase/lawyer + l_pocket = /obj/item/laser_pointer + r_pocket = /obj/item/clothing/accessory/lawyers_badge + + chameleon_extras = /obj/item/stamp/law + +/datum/outfit/job/nanotrasen/lawyer/corporaterepresentative + name = "Nanotrasen - Lawyer (Corporate Representative)" + job_icon = "nanotrasen" + + + uniform = /obj/item/clothing/under/rank/command/head_of_personnel/suit + suit = null + ears = /obj/item/radio/headset/headset_cent + l_hand = /obj/item/clipboard + r_pocket = /obj/item/pen/fountain + +// Security Officer + +/datum/outfit/job/nanotrasen/security + name = "Nanotrasen - Security Officer" + jobtype = /datum/job/officer + job_icon = "securityofficer" + + ears = /obj/item/radio/headset/alt + uniform = /obj/item/clothing/under/rank/security/officer/nt + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/helmet/sec + suit = /obj/item/clothing/suit/armor/vest + alt_suit = /obj/item/clothing/suit/armor/vest/security/officer + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + shoes = /obj/item/clothing/shoes/jackboots + l_pocket = /obj/item/restraints/handcuffs + r_pocket = /obj/item/assembly/flash/handheld + backpack_contents = null + + backpack = /obj/item/storage/backpack/security + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + box = /obj/item/storage/box/survival/security + + chameleon_extras = list(/obj/item/gun/energy/disabler, /obj/item/clothing/glasses/hud/security/sunglasses, /obj/item/clothing/head/helmet) + //The helmet is necessary because /obj/item/clothing/head/helmet/sec is overwritten in the chameleon list by the standard helmet, which has the same name and icon state + +/datum/outfit/job/nanotrasen/security/ert + name = "Nanotrasen - ERT Officer" + + uniform = /obj/item/clothing/under/rank/security/officer/camo + head = null + backpack = /obj/item/storage/backpack/ert/security + belt = /obj/item/storage/belt/military + id = /obj/item/card/id/ert/security + r_pocket = /obj/item/kitchen/knife/combat/survival + backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) + +/datum/outfit/job/nanotrasen/security/ert/engi + name = "Nanotrasen - ERT Engineering Officer" + + uniform = /obj/item/clothing/under/rank/security/officer/camo + head = null + backpack = /obj/item/storage/backpack/ert/engineer + belt = /obj/item/storage/belt/utility/full/ert + id = /obj/item/card/id/ert/security + r_pocket = /obj/item/kitchen/knife/combat/survival + backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) + accessory = /obj/item/clothing/accessory/armband/engine + glasses = /obj/item/clothing/glasses/hud/diagnostic/sunglasses + +/datum/outfit/job/nanotrasen/security/ert/med + name = "Nanotrasen - ERT Medical Officer" + + uniform = /obj/item/clothing/under/rank/security/officer/camo + head = /obj/item/clothing/head/beret/med + backpack = /obj/item/storage/backpack/ert/medical + belt = /obj/item/storage/belt/medical/webbing/paramedic + id = /obj/item/card/id/ert/security + r_pocket = /obj/item/kitchen/knife/combat/survival + backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) + accessory = /obj/item/clothing/accessory/armband/med + glasses = /obj/item/clothing/glasses/hud/health/night + +/datum/outfit/job/nanotrasen/security/mech_pilot + name = "Nanotrasen - Mech Pilot" + + uniform = /obj/item/clothing/under/rank/security/officer/military/eng + head = /obj/item/clothing/head/beret/sec/officer + suit = /obj/item/clothing/suit/armor/vest/bulletproof + backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) + +/datum/outfit/job/nanotrasen/security/lp + name = "Nanotrasen - LP Security Specialist" + + implants = list(/obj/item/implant/mindshield) + ears = /obj/item/radio/headset/nanotrasen/alt/captain + id = /obj/item/card/id/lpsec + belt = /obj/item/pda/security + gloves = /obj/item/clothing/gloves/color/black + uniform = /obj/item/clothing/under/rank/security/head_of_security/nt/lp + alt_uniform = /obj/item/clothing/under/rank/security/head_of_security/nt/skirt/lp + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + shoes = /obj/item/clothing/shoes/jackboots + head = /obj/item/clothing/head/beret/sec + + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + +// Engineer + +/datum/outfit/job/nanotrasen/engineer + name = "Nanotrasen - Engineer" + job_icon = "stationengineer" + jobtype = /datum/job/engineer + + belt = /obj/item/storage/belt/utility/full/engi + l_pocket = /obj/item/pda/engineering + ears = /obj/item/radio/headset/headset_eng + uniform = /obj/item/clothing/under/rank/engineering/engineer/nt + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + shoes = /obj/item/clothing/shoes/workboots + head = /obj/item/clothing/head/hardhat + r_pocket = /obj/item/t_scanner + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + box = /obj/item/storage/box/survival/engineer + backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) + +/datum/outfit/job/nanotrasen/engineer/lp + name = "Nanotrasen - LP Engineering Specialist" + + implants = list(/obj/item/implant/mindshield) + ears = /obj/item/radio/headset/nanotrasen/alt/captain + id = /obj/item/card/id/lpengie + gloves = /obj/item/clothing/gloves/color/yellow + uniform = /obj/item/clothing/under/rank/engineering/engineer/nt/lp + alt_uniform = /obj/item/clothing/under/rank/engineering/engineer/nt/skirt/lp + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + shoes = /obj/item/clothing/shoes/jackboots + head = /obj/item/clothing/head/beret/eng + + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + +// Warden + +/datum/outfit/job/nanotrasen/warden + name = "Nanotrasen - Warden" + job_icon = "warden" + jobtype = /datum/job/warden + + ears = /obj/item/radio/headset/headset_sec/alt + uniform = /obj/item/clothing/under/rank/security/warden/nt + shoes = /obj/item/clothing/shoes/jackboots + suit = /obj/item/clothing/suit/armor/vest/security/warden/alt/nt + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + gloves = /obj/item/clothing/gloves/color/black + head = /obj/item/clothing/head/warden/red + glasses = /obj/item/clothing/glasses/hud/security/sunglasses + r_pocket = /obj/item/assembly/flash/handheld + l_pocket = /obj/item/restraints/handcuffs + suit_store = null + backpack_contents = list(/obj/item/melee/classic_baton) + + backpack = /obj/item/storage/backpack/security + satchel = /obj/item/storage/backpack/satchel/sec + duffelbag = /obj/item/storage/backpack/duffelbag/sec + courierbag = /obj/item/storage/backpack/messenger/sec + box = /obj/item/storage/box/survival/security + + chameleon_extras = /obj/item/gun/ballistic/shotgun/automatic/combat/compact + +// Chief Engineer + +/datum/outfit/job/nanotrasen/ce + name = "Nanotrasen - Chief Engineer" + jobtype = /datum/job/chief_engineer + job_icon = "chiefengineer" + + id = /obj/item/card/id/silver + belt = /obj/item/storage/belt/utility/chief/full + l_pocket = /obj/item/storage/wallet + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/rank/engineering/chief_engineer + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + shoes = /obj/item/clothing/shoes/sneakers/brown + head = /obj/item/clothing/head/hardhat/white + gloves = /obj/item/clothing/gloves/color/black + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced=1) + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + + box = /obj/item/storage/box/survival/engineer + chameleon_extras = /obj/item/stamp/ce + +// Medical Doctor + +/datum/outfit/job/nanotrasen/doctor + name = "Nanotrasen - Medical Doctor" + job_icon = "medicaldoctor" + jobtype = /datum/job/doctor + + ears = /obj/item/radio/headset/headset_med + uniform = /obj/item/clothing/under/rank/medical/doctor + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/toggle/labcoat + alt_suit = /obj/item/clothing/suit/apron/surgical + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/med + box = /obj/item/storage/box/survival/medical + +/datum/outfit/job/nanotrasen/doctor/lp + name = "Nanotrasen - LP Medical Specialist" + + implants = list(/obj/item/implant/mindshield) + ears = /obj/item/radio/headset/nanotrasen/alt/captain + id = /obj/item/card/id/lpmed + belt = /obj/item/pda/medical + gloves = /obj/item/clothing/gloves/color/latex/nitrile + uniform = /obj/item/clothing/under/rank/medical/paramedic/lp + alt_uniform = /obj/item/clothing/under/rank/medical/paramedic/skirt/lp + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical + shoes = /obj/item/clothing/shoes/sneakers/white + head = /obj/item/clothing/head/beret/med + + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/med + box = /obj/item/storage/box/survival/medical + +// Cargo Tech + +/datum/outfit/job/nanotrasen/cargo_tech + name = "Nanotrasen - Cargo Tech" + jobtype = /datum/job/cargo_tech + job_icon = "cargotechnician" + + belt = /obj/item/pda/cargo + ears = /obj/item/radio/headset/headset_cargo + uniform = /obj/item/clothing/under/rank/cargo/tech + dcoat = /obj/item/clothing/suit/hooded/wintercoat/cargo + backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) + +// Atmos Tech + +/datum/outfit/job/nanotrasen/atmos + name = "Nanotrasen - Atmos Tech" + jobtype = /datum/job/atmos + job_icon = "atmospherictechnician" + + belt = /obj/item/storage/belt/utility/atmostech + ears = /obj/item/radio/headset/headset_eng + uniform = /obj/item/clothing/under/rank/engineering/atmospheric_technician + alt_suit = /obj/item/clothing/suit/hazardvest + dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering + + backpack = /obj/item/storage/backpack/industrial + satchel = /obj/item/storage/backpack/satchel/eng + duffelbag = /obj/item/storage/backpack/duffelbag/engineering + courierbag = /obj/item/storage/backpack/messenger/engi + box = /obj/item/storage/box/survival/engineer + backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) + +// Scientist + +/datum/outfit/job/nanotrasen/scientist + name = "Nanotrasen - Scientist" + jobtype = /datum/job/scientist + job_icon = "scientist" + + ears = /obj/item/radio/headset/headset_sci + uniform = /obj/item/clothing/under/rank/rnd/scientist + shoes = /obj/item/clothing/shoes/sneakers/white + suit = /obj/item/clothing/suit/toggle/labcoat/science + dcoat = /obj/item/clothing/suit/hooded/wintercoat/science + + backpack = /obj/item/storage/backpack/science + satchel = /obj/item/storage/backpack/satchel/tox + courierbag = /obj/item/storage/backpack/messenger/tox + +// Brig Physician + +/datum/outfit/job/nanotrasen/brig_phys + name = "Nanotrasen - Brig Physician" + jobtype = /datum/job/brig_phys + job_icon = "brigphysician" + + ears = /obj/item/radio/headset/headset_medsec/alt + uniform = /obj/item/clothing/under/rank/security/brig_phys/nt + shoes = /obj/item/clothing/shoes/jackboots + glasses = /obj/item/clothing/glasses/hud/health/sunglasses + suit = /obj/item/clothing/suit/toggle/labcoat/brig_phys + dcoat = /obj/item/clothing/suit/hooded/wintercoat/security + head = /obj/item/clothing/head/soft/sec/brig_phys + implants = list(/obj/item/implant/mindshield) + +// Paramedic + +/datum/outfit/job/nanotrasen/paramedic + name = "Nanotrasen - Paramedic" + jobtype = /datum/job/paramedic + job_icon = "paramedic" + + ears = /obj/item/radio/headset/headset_med + uniform = /obj/item/clothing/under/rank/medical/paramedic + head = /obj/item/clothing/head/soft/paramedic + shoes = /obj/item/clothing/shoes/sneakers/blue + suit = /obj/item/clothing/suit/toggle/labcoat/paramedic + dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical/paramedic + gloves = /obj/item/clothing/gloves/color/latex/nitrile + id = /obj/item/card/id + backpack_contents = list(/obj/item/roller=1) + + backpack = /obj/item/storage/backpack/medic + satchel = /obj/item/storage/backpack/satchel/med + duffelbag = /obj/item/storage/backpack/duffelbag/med + courierbag = /obj/item/storage/backpack/messenger/para + box = /obj/item/storage/box/survival/medical + + chameleon_extras = /obj/item/gun/syringe + +// Quartermaster + +/datum/outfit/job/nanotrasen/quartermaster + name = "Nanotrasen - Quartermaster" + jobtype = /datum/job/qm + job_icon = "quartermaster" + + ears = /obj/item/radio/headset/headset_cargo + uniform = /obj/item/clothing/under/rank/cargo/qm + dcoat = /obj/item/clothing/suit/hooded/wintercoat/cargo + shoes = /obj/item/clothing/shoes/sneakers/brown + glasses = /obj/item/clothing/glasses/sunglasses + l_hand = /obj/item/clipboard + backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) + + chameleon_extras = /obj/item/stamp/qm + +/datum/outfit/job/nanotrasen/miner + name = "Nanotrasen - Miner" + jobtype = /datum/job/mining + job_icon = "shaftminer" + + ears = /obj/item/radio/headset/headset_cargo/mining + shoes = /obj/item/clothing/shoes/workboots/mining + gloves = /obj/item/clothing/gloves/explorer + uniform = /obj/item/clothing/under/rank/cargo/miner/lavaland + suit = /obj/item/clothing/suit/hazardvest + dcoat = /obj/item/clothing/suit/hooded/wintercoat/miner + r_pocket = /obj/item/storage/bag/ore + backpack_contents = list( + /obj/item/flashlight/seclite=1,\ + /obj/item/kitchen/knife/combat/survival=1,\ + /obj/item/stack/marker_beacon/ten=1,\ + /obj/item/radio/weather_monitor=1) + + backpack = /obj/item/storage/backpack/explorer + satchel = /obj/item/storage/backpack/satchel/explorer + duffelbag = /obj/item/storage/backpack/duffelbag + box = /obj/item/storage/box/survival/mining + + chameleon_extras = /obj/item/gun/energy/kinetic_accelerator diff --git a/code/modules/clothing/outfits/factions/roumain.dm b/code/modules/clothing/outfits/factions/roumain.dm new file mode 100644 index 000000000000..4cf4e56005e9 --- /dev/null +++ b/code/modules/clothing/outfits/factions/roumain.dm @@ -0,0 +1,92 @@ +/datum/outfit/job/roumain + name = "Saint-Roumain Militia - Base Outfit" + + uniform = /obj/item/clothing/under/suit/roumain + id = /obj/item/card/id + faction_icon = "bg_srm" + + box = null + +/datum/outfit/job/roumain/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + if(visualsOnly) + return + H.faction |= list(FACTION_PLAYER_ROUMAIN) + +// Assistant + +/datum/outfit/job/roumain/assistant + name = "Saint-Roumain Militia - Shadow" + jobtype = /datum/job/assistant + job_icon = "assistant" + + uniform = /obj/item/clothing/under/suit/roumain + alt_uniform = null + shoes = /obj/item/clothing/shoes/workboots/mining + suit = /obj/item/clothing/suit/armor/roumain/shadow + + head = /obj/item/clothing/head/cowboy/sec/roumain/shadow + +// Captain + +/datum/outfit/job/roumain/captain + name = "Saint-Roumain Militia - Hunter Montagne" + job_icon = "captain" + jobtype = /datum/job/captain + + ears = /obj/item/radio/headset/headset_com + uniform = /obj/item/clothing/under/suit/roumain + shoes = /obj/item/clothing/shoes/workboots/mining + suit = /obj/item/clothing/suit/armor/hos/roumain/montagne + head = /obj/item/clothing/head/HoS/cowboy/montagne + id = /obj/item/card/id/silver + + duffelbag = /obj/item/storage/backpack/cultpack + courierbag = /obj/item/storage/backpack/cultpack + backpack = /obj/item/storage/backpack/cultpack + satchel = /obj/item/storage/backpack/cultpack + + backpack_contents = list(/obj/item/book/manual/srmlore=1, + /obj/item/stamp/chap = 1, + /obj/item/melee/classic_baton/telescopic=1, + ) + chameleon_extras = null + +/datum/outfit/job/roumain/security + name = "Saint-Roumain Militia - Hunter" + jobtype = /datum/job/officer + job_icon = "securityofficer" + + uniform = /obj/item/clothing/under/suit/roumain + alt_uniform = null + shoes = /obj/item/clothing/shoes/workboots/mining + suit = /obj/item/clothing/suit/armor/roumain + head = /obj/item/clothing/head/cowboy/sec/roumain + gloves = null + + backpack = /obj/item/storage/backpack + satchel = /obj/item/storage/backpack/satchel + duffelbag = /obj/item/storage/backpack/duffelbag + courierbag = /obj/item/storage/backpack/messenger + + backpack_contents = null + +// Medical Doctor + +/datum/outfit/job/roumain/doctor + name = "Saint-Roumain Militia - Hunter Doctor" + job_icon = "medicaldoctor" + jobtype = /datum/job/doctor + + uniform = /obj/item/clothing/under/suit/roumain + alt_uniform = null + shoes = /obj/item/clothing/shoes/workboots/mining + suit = /obj/item/clothing/suit/toggle/labcoat/roumain_med + head = /obj/item/clothing/head/cowboy/sec/roumain/med + mask = /obj/item/clothing/mask/gas/plaguedoctor + gloves = null + + backpack = /obj/item/storage/backpack + satchel = /obj/item/storage/backpack/satchel + duffelbag = /obj/item/storage/backpack/duffelbag + courierbag = /obj/item/storage/backpack/messenger diff --git a/code/modules/clothing/outfits/solgov.dm b/code/modules/clothing/outfits/factions/solgov.dm similarity index 89% rename from code/modules/clothing/outfits/solgov.dm rename to code/modules/clothing/outfits/factions/solgov.dm index f6a4b03324de..33463c498581 100644 --- a/code/modules/clothing/outfits/solgov.dm +++ b/code/modules/clothing/outfits/factions/solgov.dm @@ -1,14 +1,18 @@ /datum/outfit/job/solgov + name = "SolGov Base Outfit" + + faction_icon = "bg_solgov" /datum/outfit/job/solgov/post_equip(mob/living/carbon/human/H, visualsOnly) . = ..() if(visualsOnly) return - H.faction |= list("playerSolgov") + H.faction |= list(FACTION_PLAYER_SOLGOV) /datum/outfit/job/solgov/assistant - name = "Scribe (SolGov)" + name = "SolGov - Scribe" jobtype = /datum/job/assistant + job_icon = "scribe" head = /obj/item/clothing/head/beret/solgov/plain uniform = /obj/item/clothing/under/solgov/formal @@ -16,14 +20,14 @@ suit = /obj/item/clothing/suit/solgov /datum/outfit/job/solgov/bureaucrat - name = "Bureaucrat (SolGov)" + name = "SolGov - Bureaucrat" jobtype = /datum/job/curator + job_icon = "curator" head = /obj/item/clothing/head/beret/solgov uniform = /obj/item/clothing/under/solgov/formal shoes = /obj/item/clothing/shoes/laceup suit = /obj/item/clothing/suit/solgov/bureaucrat - belt = /obj/item/pda/curator l_hand = /obj/item/storage/bag/books r_pocket = /obj/item/key/displaycase l_pocket = /obj/item/laser_pointer @@ -33,11 +37,11 @@ ) /datum/outfit/job/solgov/captain - name = "Captain (SolGov)" + name = "SolGov - Captain" jobtype = /datum/job/captain + job_icon = "solgovrepresentative" // idk id = /obj/item/card/id/gold - belt = /obj/item/pda/captain gloves = /obj/item/clothing/gloves/combat ears = /obj/item/radio/headset/solgov/alt/captain uniform = /obj/item/clothing/under/solgov/formal/captain @@ -56,8 +60,9 @@ chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/captain) /datum/outfit/job/solgov/sonnensoldner - name = "Sonnensöldner (SolGov)" + name = "SolGov - Sonnensöldner" jobtype = /datum/job/officer + job_icon = "sonnensoldner" id = /obj/item/card/id/solgov uniform = /obj/item/clothing/under/solgov @@ -73,9 +78,9 @@ backpack_contents = list(/obj/item/crowbar/power) /datum/outfit/job/solgov/representative - name = "Solarian Representative (SolGov)" - job_icon = "solgovrepresentative" + name = "SolGov - Solarian Representative" jobtype = /datum/job/solgov + job_icon = "solgovrepresentative" id = /obj/item/card/id/solgov head = /obj/item/clothing/head/solgov @@ -89,7 +94,6 @@ shoes = /obj/item/clothing/shoes/laceup ears = /obj/item/radio/headset/solgov/captain glasses = /obj/item/clothing/glasses/sunglasses - belt = /obj/item/pda/solgov implants = list(/obj/item/implant/mindshield) @@ -98,11 +102,11 @@ ) /datum/outfit/job/solgov/overseer - name = "Overseer (SolGov)" + name = "SolGov - Overseer" jobtype = /datum/job/head_of_personnel + job_icon = "headofpersonnel" id = /obj/item/card/id/solgov - belt = /obj/item/pda/heads/head_of_personnel ears = /obj/item/radio/headset/solgov/captain uniform = /obj/item/clothing/under/solgov/formal head = /obj/item/clothing/head/solgov @@ -116,10 +120,10 @@ chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/head_of_personnel) /datum/outfit/job/solgov/doctor - name = "Medical Doctor (SolGov)" + name = "SolGov - Medical Doctor" jobtype = /datum/job/doctor + job_icon = "medicaldoctor" - belt = /obj/item/pda/medical ears = /obj/item/radio/headset/headset_med uniform = /obj/item/clothing/under/solgov/formal accessory = /obj/item/clothing/accessory/armband/medblue @@ -135,10 +139,10 @@ box = /obj/item/storage/box/survival/medical /datum/outfit/job/solgov/miner - name = "Field Engineer (SolGov)" + name = "SolGov - Field Engineer" jobtype = /datum/job/mining + job_icon = "shaftminer" - belt = /obj/item/pda/shaftminer ears = /obj/item/radio/headset/headset_cargo/mining shoes = /obj/item/clothing/shoes/workboots/mining gloves = /obj/item/clothing/gloves/explorer @@ -159,8 +163,9 @@ box = /obj/item/storage/box/survival/mining /datum/outfit/job/solgov/psychologist - name = "Psychologist (SolGov)" + name = "SolGov - Psychologist" jobtype = /datum/job/psychologist + job_icon = "psychologist" head = /obj/item/clothing/head/fedora/solgov suit = /obj/item/clothing/suit/solgov/suit @@ -168,8 +173,6 @@ uniform = /obj/item/clothing/under/solgov/formal shoes = /obj/item/clothing/shoes/laceup id = /obj/item/card/id - belt = /obj/item/pda/medical - pda_slot = ITEM_SLOT_BELT l_hand = /obj/item/clipboard backpack = /obj/item/storage/backpack/medic @@ -177,8 +180,9 @@ duffelbag = /obj/item/storage/backpack/duffelbag/med /datum/outfit/job/solgov/patient - name = "Attentive Care Patient (SolGov)" + name = "SolGov - Attentive Care Patient" jobtype = /datum/job/prisoner + job_icon = "assistant" // todo: bug rye for patient icon id = /obj/item/card/id/patient uniform = /obj/item/clothing/under/rank/medical/gown @@ -186,11 +190,11 @@ shoes = /obj/item/clothing/shoes/sandal/slippers /datum/outfit/job/solgov/engineer - name = "Ship Engineer (SolGov)" + name = "SolGov - Ship Engineer" jobtype = /datum/job/engineer + job_icon = "stationengineer" belt = /obj/item/storage/belt/utility/full/engi - l_pocket = /obj/item/pda/engineering ears = /obj/item/radio/headset/headset_eng uniform = /obj/item/clothing/under/solgov/formal accessory = /obj/item/clothing/accessory/armband/engine @@ -205,15 +209,13 @@ courierbag = /obj/item/storage/backpack/messenger/engi box = /obj/item/storage/box/survival/engineer - pda_slot = ITEM_SLOT_LPOCKET backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) /datum/outfit/job/solgov/quartermaster - name = "Logistics Deck Officer (SolGov)" - job_icon = "quartermaster" + name = "SolGov - Logistics Deck Officer" jobtype = /datum/job/qm + job_icon = "quartermaster" - belt = /obj/item/pda/quartermaster ears = /obj/item/radio/headset/solgov/captain uniform = /obj/item/clothing/under/solgov/formal suit = /obj/item/clothing/suit/solgov/overcoat diff --git a/code/modules/clothing/outfits/syndicate.dm b/code/modules/clothing/outfits/factions/syndicate.dm similarity index 89% rename from code/modules/clothing/outfits/syndicate.dm rename to code/modules/clothing/outfits/factions/syndicate.dm index d1ba5c1ce35b..75158dd577ff 100644 --- a/code/modules/clothing/outfits/syndicate.dm +++ b/code/modules/clothing/outfits/factions/syndicate.dm @@ -1,12 +1,14 @@ //top outfit of everything syndicate. Don't change this. /datum/outfit/job/syndicate - name = "Syndicate (mostly) Empty" + name = "Syndicate - Base Outfit" - uniform = /obj/item/clothing/under/syndicate + uniform = /obj/item/clothing/under/color/black box = /obj/item/storage/box/survival/syndie id = /obj/item/card/id/syndicate_command/crew_id + faction_icon = "bg_syndicate" + backpack = /obj/item/storage/backpack/security satchel = /obj/item/storage/backpack/satchel/sec duffelbag = /obj/item/storage/backpack/duffelbag/syndie @@ -28,8 +30,9 @@ //and now, for the Assistants /datum/outfit/job/syndicate/assistant - name = "Junior Agent (Assistant)" + name = "Syndicate - Junior Agent" jobtype = /datum/job/assistant + job_icon = "assistant" uniform = /obj/item/clothing/under/syndicate/intern alt_uniform = null @@ -41,7 +44,6 @@ id = /obj/item/card/id/syndicate_command/crew_id r_pocket = /obj/item/radio - belt = /obj/item/pda backpack = /obj/item/storage/backpack/security satchel = /obj/item/storage/backpack/satchel/sec @@ -51,13 +53,13 @@ box = /obj/item/storage/box/survival/syndie /datum/outfit/job/syndicate/assistant/gorlex - name = "Junior Agent (Gorlex Marauders)" + name = "Syndicate - Junior Agent (Gorlex Marauders)" uniform = /obj/item/clothing/under/syndicate/gorlex alt_uniform = /obj/item/clothing/under/syndicate /datum/outfit/job/syndicate/assistant/gec - name = "Deckhand (GEC)" + name = "Syndicate - Deckhand (GEC)" uniform = /obj/item/clothing/under/syndicate suit = /obj/item/clothing/suit/toggle/hazard @@ -65,7 +67,7 @@ head = /obj/item/clothing/head/safety_helmet /datum/outfit/job/syndicate/assistant/cybersun - name = "Junior Agent (Cybersun)" + name = "Syndicate - Junior Agent (Cybersun)" uniform = /obj/item/clothing/under/syndicate/cybersun shoes = /obj/item/clothing/shoes/jackboots @@ -73,7 +75,7 @@ head = /obj/item/clothing/head/soft/cybersun /datum/outfit/job/syndicate/assistant/twink - name = "Deck Assistant (Twinkleshine)" + name = "Syndicate - Deck Assistant (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/intern shoes = /obj/item/clothing/shoes/combat @@ -100,10 +102,10 @@ //atmos techs -//Shiptest /datum/outfit/job/syndicate/atmos - name = "Atmospheric Technician (Syndicate)" + name = "Syndicate - Atmospheric Technician" jobtype = /datum/job/atmos + job_icon = "atmospherictechnician" belt = /obj/item/storage/belt/utility/atmostech @@ -113,7 +115,6 @@ dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering r_pocket = /obj/item/analyzer - l_pocket = /obj/item/pda/atmos backpack = /obj/item/storage/backpack/industrial satchel = /obj/item/storage/backpack/satchel/eng @@ -126,7 +127,7 @@ backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) /datum/outfit/job/syndicate/atmos/gec - name = "Atmospheric Technician (GEC)" + name = "Syndicate - Atmospheric Technician (GEC)" uniform = /obj/item/clothing/under/syndicate/gec/atmos_tech suit = /obj/item/clothing/suit/toggle/hazard @@ -137,13 +138,13 @@ //bartenders /datum/outfit/job/syndicate/bartender - name = "Bartender (Syndicate)" + name = "Syndicate - Bartender" jobtype = /datum/job/bartender + job_icon = "bartender" id = /obj/item/card/id/syndicate_command/crew_id head = /obj/item/clothing/head/HoS/beret/syndicate glasses = /obj/item/clothing/glasses/sunglasses/reagent - belt = /obj/item/pda/bar uniform = /obj/item/clothing/under/rank/civilian/bartender alt_uniform = /obj/item/clothing/under/rank/civilian/bartender/purple alt_suit = /obj/item/clothing/suit/apron/purple_bartender @@ -162,7 +163,7 @@ /datum/outfit/job/syndicate/bartender/twink - name = "Bartender (Twinkleshine)" + name = "Syndicate - Bartender (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/donk shoes = /obj/item/clothing/shoes/laceup @@ -186,16 +187,17 @@ //botanist /datum/outfit/job/syndicate/botanist - name = "Botanist (Syndicate)" + name = "Syndicate - Botanist" jobtype = /datum/job/hydro - belt = /obj/item/pda/botanist + job_icon = "botanist" + suit = /obj/item/clothing/suit/apron alt_suit = /obj/item/clothing/suit/apron/overalls gloves =/obj/item/clothing/gloves/botanic_leather suit_store = /obj/item/plant_analyzer /datum/outfit/job/syndicate/botanist/suns - name = "Botanist-Chemist (SUNS)" + name = "Syndicate - Botanist-Chemist (SUNS)" id = /obj/item/card/id/syndicate_command/crew_id shoes = /obj/item/clothing/shoes/jackboots @@ -203,11 +205,12 @@ suit = /obj/item/clothing/suit/toggle/labcoat/chemist suit_store = null -//Capitan (Captain) +//Capitan /datum/outfit/job/syndicate/captain - name = "Captain (Syndicate)" + name = "Syndicate - Captain" jobtype = /datum/job/captain + job_icon = "captain" id = /obj/item/card/id/syndicate_command/captain_id ears = /obj/item/radio/headset/syndicate/alt/captain @@ -216,7 +219,7 @@ head = /obj/item/clothing/head/HoS/syndicate gloves = /obj/item/clothing/gloves/combat suit = /obj/item/clothing/suit/armor/vest/capcarapace/syndicate - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/pda/captain) + backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1) backpack = /obj/item/storage/backpack/security satchel = /obj/item/storage/backpack/satchel/sec @@ -226,11 +229,10 @@ box = /obj/item/storage/box/survival/syndie /datum/outfit/job/syndicate/captain/aclf - name = "Captain (ACLF)" - + name = "Syndicate - Captain (ACLF)" /datum/outfit/job/syndicate/captain/twink - name = "Captain (Twinkleshine)" + name = "Syndicate - Captain (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/officer gloves = /obj/item/clothing/gloves/combat @@ -246,20 +248,20 @@ implants = list(/obj/item/implant/weapons_auth) -/datum/outfit/job/syndicate/captain/sbc/post_equip(mob/living/carbon/human/H) +/datum/outfit/job/syndicate/captain/twink/post_equip(mob/living/carbon/human/H) . = ..() assign_codename(H) /datum/outfit/job/syndicate/captain/gorlex - name = "Captain (Gorlex Marauders)" + name = "Syndicate - Captain (Gorlex Marauders)" uniform = /obj/item/clothing/under/syndicate/officer head = /obj/item/clothing/head/gorlexcap suit = /obj/item/clothing/suit/gorlex /datum/outfit/job/syndicate/captain/cybersun - name = "Captain (Cybersun)" + name = "Syndicate - Captain (Cybersun)" uniform = /obj/item/clothing/under/syndicate/cybersun/officer suit = /obj/item/clothing/suit/armor/vest/capcarapace/cybersun @@ -270,61 +272,59 @@ //cargo tech /datum/outfit/job/syndicate/cargo_tech - name = "Cargo Tech (Syndicate)" + name = "Syndicate - Cargo Tech" jobtype = /datum/job/cargo_tech + job_icon = "cargotechnician" id = /obj/item/card/id/syndicate_command/crew_id uniform = /obj/item/clothing/under/syndicate/donk suit = /obj/item/clothing/suit/hazardvest/donk - belt = /obj/item/pda/cargo alt_suit = /obj/item/clothing/suit/hazardvest l_hand = /obj/item/export_scanner backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) /datum/outfit/job/syndicate/cargo_tech/donk - name = "Customer Associate (Donk! Co)" + name = "Syndicate - Customer Associate (Donk)" //chemist /datum/outfit/job/syndicate/chemist - name = "Chemist (Syndicate)" + name = "Syndicate - Chemist" jobtype = /datum/job/chemist + job_icon = "chemist" - uniform = /obj/item/clothing/under/syndicate/intern + uniform = /obj/item/clothing/under/syndicate id = /obj/item/card/id/syndicate_command/crew_id - l_pocket =/obj/item/pda/chemist glasses = /obj/item/clothing/glasses/science - belt = /obj/item/pda/chemist shoes = /obj/item/clothing/shoes/sneakers/white suit = /obj/item/clothing/suit/toggle/labcoat/chemist box = /obj/item/storage/box/survival/medical /datum/outfit/job/syndicate/chemist/gec - name = "Chemist (GEC)" + name = "Syndicate - Chemist (GEC)" uniform = /obj/item/clothing/under/syndicate/intern suit = /obj/item/clothing/suit/toggle/hazard head = /obj/item/clothing/head/hardhat belt = /obj/item/storage/belt/utility/full/engi id = /obj/item/card/id/syndicate_command/crew_id - l_pocket =/obj/item/pda/chemist //Chief Engineer /datum/outfit/job/syndicate/ce - name = "Chief Engineer (Syndicate)" + name = "Syndicate - Chief Engineer" jobtype = /datum/job/chief_engineer + job_icon = "chiefengineer" id = /obj/item/card/id/syndicate_command/crew_id ears = /obj/item/radio/headset/syndicate/alt glasses = /obj/item/clothing/glasses/sunglasses belt = /obj/item/storage/belt/utility/chief/full - l_pocket = /obj/item/pda/heads/ce uniform = /obj/item/clothing/under/rank/engineering/chief_engineer shoes = /obj/item/clothing/shoes/sneakers/brown head = /obj/item/clothing/head/hardhat/white @@ -341,7 +341,7 @@ /datum/outfit/job/syndicate/ce/gec - name = "Chief Engineer (GEC)" + name = "Syndicate - Chief Engineer (GEC)" uniform = /obj/item/clothing/under/syndicate/gec/chief_engineer suit = /obj/item/clothing/suit/toggle/hazard @@ -352,7 +352,7 @@ gloves = /obj/item/clothing/gloves/combat /datum/outfit/job/syndicate/ce/gorlex - name = "Foreman (Gorlex Marauders)" + name = "Syndicate - Foreman (Gorlex Marauders)" ears = /obj/item/radio/headset/syndicate/alt uniform = /obj/item/clothing/under/syndicate/gorlex @@ -365,14 +365,14 @@ //Chief Medical Officer /datum/outfit/job/syndicate/cmo - name = "Medical Director (Cybersun)" + name = "Syndicate - Medical Director (Cybersun)" jobtype = /datum/job/cmo + job_icon = "chiefmedicalofficer" uniform = /obj/item/clothing/under/rank/medical/chief_medical_officer/cybersun ears = /obj/item/radio/headset/syndicate/alt/captain id = /obj/item/card/id/syndicate_command/captain_id shoes = /obj/item/clothing/shoes/jackboots - belt = /obj/item/pda/heads/cmo l_pocket = /obj/item/pinpointer/crew head = /obj/item/clothing/head/beret/cmo/cybersun suit = /obj/item/clothing/suit/toggle/labcoat/raincoat @@ -381,13 +381,12 @@ backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1) /datum/outfit/job/syndicate/cmo/suns - name = "Medical Director (SUNS)" + name = "Syndicate - Medical Director (SUNS)" uniform = /obj/item/clothing/under/syndicate ears = /obj/item/radio/headset/syndicate/alt/captain id = /obj/item/card/id/syndicate_command/captain_id shoes = /obj/item/clothing/shoes/jackboots - belt = /obj/item/pda/heads/cmo l_pocket = /obj/item/pinpointer/crew shoes = /obj/item/clothing/shoes/sneakers/brown suit = /obj/item/clothing/suit/toggle/labcoat/cmo @@ -398,8 +397,9 @@ //"Head Of Personnel" /datum/outfit/job/syndicate/head_of_personnel - name = "Bridge Officer (Syndicate)" + name = "Syndicate - Bridge Officer" jobtype = /datum/job/head_of_personnel + job_icon = "headofpersonnel" ears = /obj/item/radio/headset/syndicate/alt uniform = /obj/item/clothing/under/syndicate/aclfgrunt @@ -409,12 +409,11 @@ id = /obj/item/card/id/syndicate_command/crew_id r_pocket = /obj/item/kitchen/knife/combat/survival glasses = /obj/item/clothing/glasses/hud/health - belt = /obj/item/pda/heads/head_of_personnel backpack_contents = list(/obj/item/storage/box/ids=1,\ /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) /datum/outfit/job/syndicate/head_of_personnel/cybersun - name = "Intelligence Officer (Cybersun)" + name = "Syndicate - Intelligence Officer (Cybersun)" ears = /obj/item/radio/headset/syndicate/alt uniform = /obj/item/clothing/under/syndicate/cybersun/officer @@ -429,15 +428,15 @@ //head of security /datum/outfit/job/syndicate/hos - name = "Head Of Security (Syndicate)" + name = "Syndicate - Head Of Security" jobtype = /datum/job/hos + job_icon = "headofsecurity" ears = /obj/item/radio/headset/syndicate/alt uniform = /obj/item/clothing/under/syndicate/combat head = /obj/item/clothing/head/HoS/syndicate suit = /obj/item/clothing/suit/armor/vest/syndie id = /obj/item/card/id/syndicate_command/crew_id - belt = /obj/item/pda/heads/hos shoes = /obj/item/clothing/shoes/jackboots glasses = /obj/item/clothing/glasses/hud/security/sunglasses suit_store = /obj/item/gun/energy/e_gun @@ -446,10 +445,10 @@ backpack_contents = list(/obj/item/melee/baton/loaded=1) /datum/outfit/job/syndicate/hos/gorlex - name = "Sergeant (Syndicate)" + name = "Syndicate - Sergeant (Gorlex)" /datum/outfit/job/syndicate/hos/twink - name = "Lieutenant (Twinkleshine)" + name = "Syndicate - Lieutenant (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/officer head = /obj/item/clothing/head/HoS/beret/syndicate @@ -480,29 +479,29 @@ //medical doctors (assorted) /datum/outfit/job/syndicate/doctor - name = "Medical Doctor (Syndicate)" + name = "Syndicate - Medical Doctor" jobtype = /datum/job/doctor + job_icon = "medicaldoctor" uniform = /obj/item/clothing/under/syndicate id = /obj/item/card/id/syndicate_command/crew_id shoes = /obj/item/clothing/shoes/jackboots - belt = /obj/item/pda/medical shoes = /obj/item/clothing/shoes/sneakers/white alt_suit = /obj/item/clothing/suit/apron/surgical l_hand = /obj/item/storage/firstaid/medical /datum/outfit/job/syndicate/doctor/suns - name = "Medical Doctor (SUNS)" + name = "Syndicate - Medical Doctor (SUNS)" /datum/outfit/job/syndicate/doctor/cybersun - name = "Medical Doctor (Cybersun)" + name = "Syndicate - Medical Doctor (Cybersun)" uniform = /obj/item/clothing/under/syndicate/medic accessory = /obj/item/clothing/accessory/armband/medblue shoes = /obj/item/clothing/shoes/jackboots /datum/outfit/job/syndicate/doctor/gorlex - name = "Medical Doctor (Gorlex)" + name = "Syndicate - Medical Doctor (Gorlex)" uniform = /obj/item/clothing/under/syndicate/gorlex glasses = /obj/item/clothing/glasses/hud/health/prescription @@ -515,9 +514,9 @@ /datum/outfit/job/syndicate/paramedic - name = "Paramedic (Syndicate)" + name = "Syndicate - Paramedic" jobtype = /datum/job/paramedic - + job_icon = "paramedic" id = /obj/item/card/id/syndicate_command/crew_id uniform = /obj/item/clothing/under/syndicate/gorlex @@ -530,16 +529,15 @@ gloves = /obj/item/clothing/gloves/color/latex/nitrile/evil belt = /obj/item/storage/belt/medical/paramedic id = /obj/item/card/id - l_pocket = /obj/item/pda/medical suit_store = /obj/item/flashlight/pen backpack_contents = list(/obj/item/roller=1) pda_slot = ITEM_SLOT_LPOCKET /datum/outfit/job/syndicate/paramedic/gorlex - name = "Paramedic (Gorlex)" + name = "Syndicate - Paramedic (Gorlex)" /datum/outfit/job/syndicate/paramedic/cybersun - name = "Field Medic (Cybersun Industries)" + name = "Syndicate - Field Medic (Cybersun Industries)" uniform = /obj/item/clothing/under/syndicate/medic head = /obj/item/clothing/head/soft/cybersun/medical @@ -547,7 +545,7 @@ suit = /obj/item/clothing/suit/toggle/labcoat/raincoat /datum/outfit/job/syndicate/paramedic/twink - name = "Medic (Twinkleshine)" + name = "Syndicate - Medic (Twinkleshine)" gloves = /obj/item/clothing/gloves/color/latex/nitrile/evil uniform = /obj/item/clothing/under/syndicate/medic @@ -562,7 +560,6 @@ mask = /obj/item/clothing/mask/chameleon id = /obj/item/card/id/syndicate_command/crew_id/med implants = list(/obj/item/implant/weapons_auth) - backpack_contents = list(/obj/item/pda/brig_phys) backpack = /obj/item/storage/backpack/security satchel = /obj/item/storage/backpack/satchel/sec @@ -578,8 +575,9 @@ //psychologist /datum/outfit/job/syndicate/psychologist - name = "Psychologist (Syndicate)" + name = "Syndicate - Psychologist" jobtype = /datum/job/psychologist + job_icon = "psychologist" id = /obj/item/card/id/syndicate_command/crew_id uniform = /obj/item/clothing/under/rank/medical/psychiatrist @@ -587,7 +585,6 @@ shoes = /obj/item/clothing/shoes/laceup alt_uniform = null l_hand = /obj/item/clipboard - belt = /obj/item/pda/medical pda_slot = ITEM_SLOT_BELT /datum/outfit/job/syndicate/psychologist/suns @@ -596,8 +593,9 @@ //patient (prisoner) /datum/outfit/job/syndicate/patient - name = "Long Term Patient" + name = "Syndicate - Long Term Patient" jobtype = /datum/job/prisoner + job_icon = "assistant" id = /obj/item/card/id/patient uniform = /obj/item/clothing/under/rank/medical/gown @@ -607,8 +605,9 @@ //Quartermaster /datum/outfit/job/syndicate/quartermaster - name = "Quartermaster (Syndicate)" + name = "Syndicate - Quartermaster" jobtype = /datum/job/qm + job_icon = "quartermaster" id = /obj/item/card/id/syndicate_command/captain_id @@ -617,13 +616,12 @@ suit = /obj/item/clothing/suit/hazardvest/donk/qm ears = /obj/item/radio/headset/syndicate/alt shoes = /obj/item/clothing/shoes/laceup - belt = /obj/item/pda/quartermaster glasses = /obj/item/clothing/glasses/sunglasses l_hand = /obj/item/clipboard backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) /datum/outfit/job/syndicate/quartermaster/donk - name = "Manager (Donk! Co.)" + name = "Syndicate - Manager (Donk)" id = /obj/item/card/id/syndicate_command/captain_id ears = /obj/item/radio/headset/syndicate/alt @@ -635,9 +633,9 @@ //security officers /datum/outfit/job/syndicate/security - name = "Operative (Syndicate)" + name = "Syndicate - Operative" jobtype = /datum/job/officer - + job_icon = "securityofficer" uniform = /obj/item/clothing/under/syndicate r_pocket = /obj/item/kitchen/knife/combat/survival @@ -659,10 +657,10 @@ /datum/outfit/job/syndicate/security/gorlex - name = "Assault Operative (Gorlex)" + name = "Syndicate - Assault Operative (Gorlex)" /datum/outfit/job/syndicate/security/twink - name = "Operative (Twinkleshine)" + name = "Syndicate - Operative (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/combat ears = /obj/item/radio/headset/syndicate/alt mask = /obj/item/clothing/mask/chameleon @@ -690,10 +688,10 @@ //Miners /datum/outfit/job/syndicate/miner - name = "Miner (Syndicate)" + name = "Syndicate - Miner" jobtype = /datum/job/mining + job_icon = "shaftminer" - belt = /obj/item/pda/shaftminer ears = /obj/item/radio/headset/headset_cargo/mining shoes = /obj/item/clothing/shoes/workboots/mining gloves = /obj/item/clothing/gloves/explorer @@ -707,14 +705,14 @@ /obj/item/stack/marker_beacon/ten=1) /datum/outfit/job/syndicate/miner/gorlex - name = "Wrecker (Gorlex Marauders)" + name = "Syndicate - Wrecker (Gorlex Marauders)" uniform = /obj/item/clothing/under/syndicate/gorlex shoes = /obj/item/clothing/shoes/workboots ears = /obj/item/radio/headset/alt /datum/outfit/job/syndicate/miner/twink - name = "Miner (Twinkleshine)" + name = "Syndicate - Miner (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/gorlex shoes = /obj/item/clothing/shoes/workboots @@ -739,7 +737,7 @@ assign_codename(H) /datum/outfit/job/syndicate/miner/cybersun - name = "Field Agent (Cybersun)" + name = "Syndicate - Field Agent (Cybersun)" id = /obj/item/card/id/syndicate_command/crew_id ears = /obj/item/radio/headset @@ -749,7 +747,7 @@ r_pocket = /obj/item/radio /datum/outfit/job/syndicate/miner/gec - name = "Shaft Miner (GEC)" + name = "Syndicate - Shaft Miner (GEC)" id = /obj/item/card/id/syndicate_command/crew_id ears = /obj/item/radio/headset @@ -765,8 +763,9 @@ //"station" engineers /datum/outfit/job/syndicate/engineer - name = "Ship Technician (Syndicate)" + name = "Syndicate - Ship Technician" jobtype = /datum/job/engineer + job_icon = "stationengineer" id = /obj/item/card/id/syndicate_command/crew_id uniform = /obj/item/clothing/under/syndicate/aclfgrunt @@ -775,7 +774,6 @@ shoes = /obj/item/clothing/shoes/jackboots belt = /obj/item/storage/belt/utility/full/engi - l_pocket = /obj/item/pda/engineering head = /obj/item/clothing/head/hardhat/dblue r_pocket = /obj/item/t_scanner @@ -784,7 +782,7 @@ backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) /datum/outfit/job/syndicate/engineer/gec - name = "Ship Engineer (GEC)" + name = "Syndicate - Ship Engineer (GEC)" uniform = /obj/item/clothing/under/syndicate/gec suit = /obj/item/clothing/suit/toggle/hazard @@ -792,7 +790,7 @@ id = /obj/item/card/id/syndicate_command/crew_id /datum/outfit/job/syndicate/engineer/gorlex - name = "Mechanic (Gorlex Marauders)" + name = "Syndicate - Mechanic (Gorlex Marauders)" uniform = /obj/item/clothing/under/syndicate/gorlex shoes = /obj/item/clothing/shoes/workboots @@ -800,7 +798,7 @@ glasses = null /datum/outfit/job/syndicate/engineer/twink - name = "Ship Engineer (Twinkleshine)" + name = "Syndicate - Ship Engineer (Twinkleshine)" uniform = /obj/item/clothing/under/syndicate/gec accessory = null @@ -825,7 +823,7 @@ assign_codename(H) /datum/outfit/job/syndicate/engineer/cybersun - name = "Engineer (Cybersun)" + name = "Syndicate - Engineer (Cybersun)" uniform = /obj/item/clothing/under/syndicate/cybersun/research shoes = /obj/item/clothing/shoes/workboots diff --git a/code/modules/clothing/outfits/standard.dm b/code/modules/clothing/outfits/standard.dm index db8c198ec06d..72127bbaf7df 100644 --- a/code/modules/clothing/outfits/standard.dm +++ b/code/modules/clothing/outfits/standard.dm @@ -5,95 +5,6 @@ var/obj/item/implant/mindshield/L = new/obj/item/implant/mindshield(H)//hmm lets have centcom officials become revs L.implant(H, null, 1) -/datum/outfit/centcom/spec_ops - name = "Special Ops Officer" - - uniform = /obj/item/clothing/under/syndicate - suit = /obj/item/clothing/suit/space/officer - shoes = /obj/item/clothing/shoes/combat/swat - gloves = /obj/item/clothing/gloves/tackler/combat/insulated - glasses = /obj/item/clothing/glasses/thermal/eyepatch - ears = /obj/item/radio/headset/headset_cent/commander - mask = /obj/item/clothing/mask/cigarette/cigar/havana - head = /obj/item/clothing/head/helmet/space/beret - belt = /obj/item/gun/energy/pulse/pistol/m1911 - r_pocket = /obj/item/lighter - back = /obj/item/storage/backpack/satchel/leather - id = /obj/item/card/id/centcom - -/datum/outfit/centcom/spec_ops/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - if(visualsOnly) - return - - var/obj/item/card/id/W = H.wear_id - W.access = get_all_accesses() - W.access += get_centcom_access("Special Ops Officer") - W.assignment = "Special Ops Officer" - W.registered_name = H.real_name - W.update_label() - - var/obj/item/radio/headset/R = H.ears - R.set_frequency(FREQ_CENTCOM) - R.freqlock = TRUE - ..() - -/datum/outfit/space - name = "Standard Space Gear" - - uniform = /obj/item/clothing/under/color/grey - shoes = /obj/item/clothing/shoes/sneakers/black - suit = /obj/item/clothing/suit/space - head = /obj/item/clothing/head/helmet/space - back = /obj/item/tank/jetpack/oxygen - mask = /obj/item/clothing/mask/breath - -/datum/outfit/tournament - name = "tournament standard red" - - uniform = /obj/item/clothing/under/color/red - shoes = /obj/item/clothing/shoes/sneakers/black - suit = /obj/item/clothing/suit/armor/vest - head = /obj/item/clothing/head/helmet/thunderdome - r_hand = /obj/item/gun/energy/pulse/destroyer - l_hand = /obj/item/kitchen/knife - r_pocket = /obj/item/grenade/smokebomb - -/datum/outfit/tournament/green - name = "tournament standard green" - - uniform = /obj/item/clothing/under/color/green - -/datum/outfit/tournament/gangster - name = "tournament gangster" - - uniform = /obj/item/clothing/under/rank/security/detective - suit = /obj/item/clothing/suit/det_suit - glasses = /obj/item/clothing/glasses/thermal/monocle - head = /obj/item/clothing/head/fedora/det_hat - r_hand = /obj/item/gun/ballistic - l_hand = null - r_pocket = /obj/item/ammo_box/c10mm - -/datum/outfit/tournament/janitor - name = "tournament janitor" - - uniform = /obj/item/clothing/under/rank/civilian/janitor - back = /obj/item/storage/backpack - suit = null - head = null - r_hand = /obj/item/mop - l_hand = /obj/item/reagent_containers/glass/bucket - r_pocket = /obj/item/grenade/chem_grenade/cleaner - l_pocket = /obj/item/grenade/chem_grenade/cleaner - backpack_contents = list(/obj/item/stack/tile/plasteel=6) - -/datum/outfit/tournament/janitor/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - if(visualsOnly) - return - - var/obj/item/reagent_containers/glass/bucket/bucket = H.get_item_for_held_index(1) - bucket.reagents.add_reagent(/datum/reagent/water,70) - /datum/outfit/laser_tag name = "Laser Tag Red" @@ -149,48 +60,6 @@ W.registered_name = H.real_name W.update_label() -/datum/outfit/assassin - name = "Assassin" - - uniform = /obj/item/clothing/under/suit/black - shoes = /obj/item/clothing/shoes/sneakers/black - gloves = /obj/item/clothing/gloves/color/black - ears = /obj/item/radio/headset - glasses = /obj/item/clothing/glasses/sunglasses - l_pocket = /obj/item/melee/transforming/energy/sword/saber - l_hand = /obj/item/storage/secure/briefcase - id = /obj/item/card/id/syndicate - belt = /obj/item/pda/heads - -/datum/outfit/assassin/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - var/obj/item/clothing/under/U = H.w_uniform - U.attach_accessory(new /obj/item/clothing/accessory/waistcoat(H)) - - if(visualsOnly) - return - - //Could use a type - var/obj/item/storage/secure/briefcase/sec_briefcase = H.get_item_for_held_index(1) - for(var/obj/item/briefcase_item in sec_briefcase) - qdel(briefcase_item) - for(var/i = 3 to 0 step -1) - SEND_SIGNAL(sec_briefcase, COMSIG_TRY_STORAGE_INSERT, new /obj/item/spacecash/bundle/mediumrand, null, TRUE, TRUE) - SEND_SIGNAL(sec_briefcase, COMSIG_TRY_STORAGE_INSERT, new /obj/item/gun/energy/kinetic_accelerator/crossbow, null, TRUE, TRUE) - SEND_SIGNAL(sec_briefcase, COMSIG_TRY_STORAGE_INSERT, new /obj/item/gun/ballistic/revolver/mateba, null, TRUE, TRUE) - SEND_SIGNAL(sec_briefcase, COMSIG_TRY_STORAGE_INSERT, new /obj/item/ammo_box/a357, null, TRUE, TRUE) - SEND_SIGNAL(sec_briefcase, COMSIG_TRY_STORAGE_INSERT, new /obj/item/grenade/c4/x4, null, TRUE, TRUE) - - var/obj/item/pda/heads/pda = H.belt - pda.owner = H.real_name - pda.ownjob = "Reaper" - pda.update_label() - - var/obj/item/card/id/syndicate/W = H.wear_id - W.access = get_all_accesses() - W.assignment = "Reaper" - W.registered_name = H.real_name - W.update_label() - /datum/outfit/centcom/commander name = "CentCom Commander" @@ -269,27 +138,6 @@ shoes = /obj/item/clothing/shoes/sandal/marisa head = /obj/item/clothing/head/wizard/marisa -/datum/outfit/mobster - name = "Mobster" - - uniform = /obj/item/clothing/under/suit/black_really - head = /obj/item/clothing/head/fedora - shoes = /obj/item/clothing/shoes/laceup - gloves = /obj/item/clothing/gloves/color/black - ears = /obj/item/radio/headset - glasses = /obj/item/clothing/glasses/sunglasses - r_hand = /obj/item/gun/ballistic/automatic/smg/thompson/drum - id = /obj/item/card/id - -/datum/outfit/mobster/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - if(visualsOnly) - return - - var/obj/item/card/id/W = H.wear_id - W.assignment = "Assistant" - W.registered_name = H.real_name - W.update_label() - /datum/outfit/plasmaman name = "Plasmaman" @@ -381,26 +229,3 @@ var/obj/item/card/id/W = H.wear_id W.registered_name = H.real_name W.update_label() - -/datum/outfit/job/hos/inteq_honorable - name = "Inteq Honorable vanguard" - head = /obj/item/clothing/head/beret/sec/hos/inteq/honorable - uniform = /obj/item/clothing/under/syndicate/inteq/honorable - suit = /obj/item/clothing/suit/armor/hos/inteq/honorable - mask = /obj/item/clothing/mask/gas/sechailer/inteq - gloves = /obj/item/clothing/gloves/combat - shoes = /obj/item/clothing/shoes/combat - ears = /obj/item/radio/headset/inteq/alt - belt = /obj/item/storage/belt/military/assault - glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq - -/datum/outfit/job/hos/inteq_honorable/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - if(visualsOnly) - return - - var/obj/item/card/id/W = H.wear_id - W.access = get_all_accesses() - W.assignment = "Honorable Vanguard" - W.registered_name = H.real_name - W.update_label() - ..() diff --git a/code/modules/clothing/shoes/colour.dm b/code/modules/clothing/shoes/colour.dm index 65d19b1cdeb3..1b05de78e96d 100644 --- a/code/modules/clothing/shoes/colour.dm +++ b/code/modules/clothing/shoes/colour.dm @@ -1,11 +1,6 @@ /obj/item/clothing/shoes/sneakers dying_key = DYE_REGISTRY_SNEAKERS supports_variations = DIGITIGRADE_VARIATION | VOX_VARIATION | KEPORI_VARIATION - -/obj/item/clothing/shoes/sneakers/black - name = "black shoes" - icon_state = "black" - desc = "A pair of black shoes." custom_price = 50 cold_protection = FEET @@ -13,6 +8,11 @@ heat_protection = FEET max_heat_protection_temperature = SHOES_MAX_TEMP_PROTECT +/obj/item/clothing/shoes/sneakers/black + name = "black shoes" + icon_state = "black" + desc = "A pair of black shoes." + /obj/item/clothing/shoes/sneakers/brown name = "brown shoes" desc = "A pair of brown shoes." diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 8d9cab360203..a738bee8f8ed 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -145,7 +145,7 @@ /obj/item/clothing/shoes/jackboots name = "jackboots" - desc = "Nanotrasen-issue Security combat boots for combat scenarios or combat situations. All combat, all the time." + desc = "Ankle-high combat boots for combat scenarios or combat situations. All combat, all the time." icon_state = "jackboots" item_state = "jackboots" lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' @@ -434,7 +434,7 @@ /obj/item/clothing/shoes/cowboy/fancy name = "bilton wrangler boots" - desc = "A pair of authentic haute couture boots from Japanifornia. You doubt they have ever been close to cattle." + desc = "A pair of authentic haute couture boots. You doubt they have ever been close to cattle." icon_state = "cowboy_fancy" permeability_coefficient = 0.08 diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index b93db688fa02..9c363c11551a 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -341,7 +341,7 @@ /obj/item/clothing/suit/armor/hos/inteq/honorable //Basically CC higherup clothing for inteq name = "honorable vanguard battlecoat" - desc = "A sleek black coat with snow white fur trims made to order for honorable vanguards of the IRMG, It feels even tougher than the typical battlecoat." + desc = "A sleek black coat with snow white fur trims made to order for honorable vanguards of the IRMG. It feels even tougher than the typical battlecoat." icon_state = "armor_inteq_honorable_battlecoat" item_state = "inteq_honorable_battlecoat" armor = list("melee" = 40, "bullet" = 50, "laser" = 50, "energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 90) diff --git a/code/modules/clothing/under/jobs/cargo.dm b/code/modules/clothing/under/jobs/cargo.dm index 7d1eaa30190d..c5426e63883e 100644 --- a/code/modules/clothing/under/jobs/cargo.dm +++ b/code/modules/clothing/under/jobs/cargo.dm @@ -29,7 +29,7 @@ /obj/item/clothing/under/rank/cargo/tech/skirt name = "cargo technician's jumpskirt" - desc = "Skiiiiirts! They're comfy and easy to wear" + desc = "Skiiiiirts! They're comfy and easy to wear!" icon_state = "cargo_skirt" item_state = "lb_suit" body_parts_covered = CHEST|GROIN|ARMS diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index 251743a5cdad..de9cb15258e5 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -85,12 +85,12 @@ // Brig Physician // /obj/item/clothing/under/rank/security/brig_phys name = "brig physician jumpsuit" - desc = "A lightly armored jumpsuit worn by Nanotrasen's Asset Protection Medical Corps." + desc = "A lightly armored jumpsuit, worn by practitioners entrusted to the care of prisoners around the frontier." icon_state = "brig_phys" /obj/item/clothing/under/rank/security/brig_phys/skirt name = "brig physician jumpskirt" - desc = "A lightly armored jumpsuit worn by Nanotrasen's Asset Protection Medical Corps." + desc = "A lightly armored jumpskirt, worn by practitioners entrusted to the care of prisoners around the frontier." icon_state = "brig_phys_skirt" body_parts_covered = CHEST|GROIN|ARMS can_adjust = FALSE @@ -98,13 +98,13 @@ /obj/item/clothing/under/rank/security/brig_phys/nt name = "security medic's uniform" - desc = "A lightly armored uniform worn by medics ensuring the health of prisoners." + desc = "A lightly armored uniform worn by members of Nanotrasen's Asset Protection Medical Corps." icon_state = "rbrig_phys" item_state = "r_suit" /obj/item/clothing/under/rank/security/brig_phys/nt/skirt name = "security medic's uniform" - desc = "A lightly armored uniform, with a skirt, worn by medics ensuring the health of prisoners." + desc = "A lightly armored uniform, with a skirt, worn by members of Nanotrasen's Asset Protection Medical Corps." icon_state = "rbrig_phys_skirt" body_parts_covered = CHEST|GROIN|ARMS supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON @@ -129,30 +129,18 @@ /obj/item/clothing/under/rank/security/warden/nt name = "warden's red security suit" - desc = "A formal security suit for officers complete with Nanotrasen belt buckle." + desc = "A formal security suit for wardens, complete with Nanotrasen belt buckle." icon_state = "rwarden" item_state = "r_suit" /obj/item/clothing/under/rank/security/warden/nt/skirt name = "warden's red suitskirt" - desc = "A formal security suitskirt for officers complete with Nanotrasen belt buckle." + desc = "A formal security suitskirt for wardens, complete with Nanotrasen belt buckle." icon_state = "rwarden_skirt" item_state = "r_suit" body_parts_covered = CHEST|GROIN|ARMS supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON -/obj/item/clothing/under/rank/security/head_of_security/nt - name = "red head of security's jumpsuit" - icon_state = "rhos" - item_state = "r_suit" - -/obj/item/clothing/under/rank/security/head_of_security/nt/skirt - name = "head of security's red jumpskirt" - desc = "A security jumpskirt decorated for those few with the dedication to achieve the position of Head of Security." - icon_state = "rhos_skirt" - body_parts_covered = CHEST|GROIN|ARMS - supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON - // Head of Security // /obj/item/clothing/under/rank/security/head_of_security name = "head of security's jumpsuit" @@ -186,6 +174,18 @@ body_parts_covered = CHEST|GROIN|ARMS supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON +/obj/item/clothing/under/rank/security/head_of_security/nt + name = "red head of security's jumpsuit" + icon_state = "rhos" + item_state = "r_suit" + +/obj/item/clothing/under/rank/security/head_of_security/nt/skirt + name = "head of security's red jumpskirt" + desc = "A security jumpskirt decorated for those few with the dedication to achieve the position of Head of Security." + icon_state = "rhos_skirt" + body_parts_covered = CHEST|GROIN|ARMS + supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON + /obj/item/clothing/under/rank/security/head_of_security/parade name = "head of security's parade uniform" desc = "A male head of security's luxury-wear, for special occasions." @@ -201,7 +201,7 @@ // Prisoner // /obj/item/clothing/under/rank/prisoner name = "prison jumpsuit" - desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position." + desc = "It's standardised prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position." icon = 'icons/obj/clothing/under/security.dmi' icon_state = "prisoner" item_state = "o_suit" @@ -212,7 +212,7 @@ /obj/item/clothing/under/rank/prisoner/skirt name = "prison jumpskirt" - desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position." + desc = "It's standardised prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position." icon_state = "prisoner_skirt" item_state = "o_suit" body_parts_covered = CHEST|GROIN|ARMS @@ -221,12 +221,12 @@ /obj/item/clothing/under/rank/prisoner/protected_custody name = "protected custody jumpsuit" - desc = "It's standardised Nanotrasen prisoner-wear worn by those in protected custody. Its suit sensors are stuck in the \"Fully On\" position." + desc = "It's standardised prisoner-wear worn by those in protected custody. Its suit sensors are stuck in the \"Fully On\" position." icon_state = "protected_custody" /obj/item/clothing/under/rank/prisoner/protected_custody/skirt name = "protected custody jumpskirt" - desc = "It's standardised Nanotrasen prisoner-wear worn by those in protected custody. Its suit sensors are stuck in the \"Fully On\" position." + desc = "It's standardised prisoner-wear worn by those in protected custody. Its suit sensors are stuck in the \"Fully On\" position." icon_state = "protected_custody_skirt" supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON @@ -254,7 +254,7 @@ /obj/item/clothing/under/rank/security/officer/mallcop name = "NT mall cop uniform" - desc = "The radio and badge are sewn on, what a crappy knock off. Secway not included." + desc = "The radio and badge are sewn on. What a crappy knock off! Secway not included." icon_state = "mallcop" can_adjust = FALSE @@ -293,14 +293,16 @@ /obj/item/clothing/under/rank/security/officer/frontier name = "\improper Frontiersmen uniform" - desc = "Worn by members of the Frontiersmen pirate fleet. It's less comfortable than it looks." + desc = "Worn by members of the Frontiersmen pirate fleet. It's very uncomfortable to move around in." icon_state = "frontier" item_state = "gy_suit" /obj/item/clothing/under/rank/security/officer/frontier/officer name = "\improper Frontiersmen officer's uniform" + desc = "Worn by officers of the Frontiersmen pirate fleet. It's less comfortable than it looks." icon_state = "frontier_officer" /obj/item/clothing/under/rank/security/officer/frontier/admiral name = "\improper Frontiersmen admiral's uniform" + desc = "Worn by admirals of the Frontiersmen pirate fleet. It's the only Frontiersman uniform that isn't mass produced." icon_state = "frontier_admiral" diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm deleted file mode 100644 index e6a1c90ede6e..000000000000 --- a/code/modules/holodeck/computer.dm +++ /dev/null @@ -1,414 +0,0 @@ -/* -Map Template Holodeck - -Holodeck finds the location of mapped_start_area and loads offline_program in it on LateInitialize. It then loads the programs that have the -same holodeck_access flag as it (e.g. the station holodeck has the holodeck_access flag STATION_HOLODECK, and it loads all programs with this -flag). These program templates are then given to Holodeck.js in the form of program_cache and emag_programs. when a user selects a program the -ui calls load_program() with the id of the selected program. -load_program() -> map_template/load() on map_template/holodeck. - -holodeck map templates: -1. have an update_blacklist that doesnt allow placing on non holofloors (except for engine floors so you can repair it) -2. has should_place_on_top = FALSE, so that the baseturfs list doesnt pull a kilostation oom crash -3. has returns_created = TRUE, so that SSatoms gives the map template a list of spawned atoms -all the fancy flags and shit are added to holodeck objects in finish_spawn() - -Easiest way to add new holodeck programs: -1. Define new map template datums in code/modules/holodeck/holodeck_map_templates, make sure they have the access flags -of the holodeck you want them to be able to load, for the onstation holodeck the flag is STATION_HOLODECK. -2. Create the new map templates in _maps/templates (remember theyre 9x10, and make sure they have area/noop or else it will fuck with linked) -all turfs in holodeck programs MUST be of type /turf/open/floor/holofloor, OR /turf/open/floor/engine, or they will block future programs! - -Note: if youre looking at holodeck code because you want to see how returns_created is handled so that templates return a list of atoms -created from them: make sure you handle that list correctly! Either copy them by value and delete them or reference it and handle qdel'ing -and clear when youre done! if you dont i will use :newspaper2: on you -*/ - -#define HOLODECK_CD 2 SECONDS -#define HOLODECK_DMG_CD 5 SECONDS - - -/obj/machinery/computer/holodeck - name = "holodeck control console" - desc = "A computer used to control a nearby holodeck." - icon_screen = "holocontrol" - idle_power_usage = 10 - active_power_usage = 50 - - //new vars - ///what access type this holodeck has, used to specify programs for another holodeck that others cant load. - var/holodeck_access = STATION_HOLODECK - - ///what area type this holodeck loads into. linked turns into the nearest instance of this area - var/area/mapped_start_area = /area/holodeck/rec_center - - ///the currently used map template - var/datum/map_template/holodeck/template - - ///bottom left corner of the loading room, used for placing - var/turf/bottom_left - - ///if TRUE the holodeck is busy spawning another simulation and should immediately stop loading the newest one - var/spawning_simulation = FALSE - - //old vars - - ///the area that this holodeck loads templates into, used for power and deleting holo objects that leave it - var/area/holodeck/linked - - ///what program is loaded right now or is about to be loaded - var/program = "holodeck_offline" - var/last_program - - ///the default program loaded by this holodeck when spawned and when deactivated - var/offline_program = "holodeck_offline" - - ///stores all of the unrestricted holodeck map templates that this computer has access to - var/list/program_cache - ///stores all of the restricted holodeck map templates that this computer has access to - var/list/emag_programs - - ///subtypes of this (but not this itself) are loadable programs - var/program_type = /datum/map_template/holodeck - - ///every holo object created by the holodeck goes in here to track it - var/list/spawned = list() - var/list/effects = list() //like above, but for holo effects - - ///TRUE if the holodeck is using extra power because of a program, FALSE otherwise - var/active = FALSE - ///increases the holodeck cooldown if TRUE, causing the holodeck to take longer to allow loading new programs - var/damaged = FALSE - - //creates the timer that determines if another program can be manually loaded - COOLDOWN_DECLARE(holodeck_cooldown) - -/obj/machinery/computer/holodeck/Initialize(mapload) - ..() - return INITIALIZE_HINT_LATELOAD - -/obj/machinery/computer/holodeck/LateInitialize()//from here linked is populated and the program list is generated. its also set to load the offline program - linked = GLOB.areas_by_type[mapped_start_area] - - var/area/computer_area = get_area(src) - if(istype(computer_area, /area/holodeck)) - log_mapping("Holodeck computer cannot be in a holodeck, This would cause circular power dependency.") - qdel(src) - return - - // the following is necessary for power reasons - if(!linked) - log_mapping("No matching holodeck area found") - qdel(src) - return - else if (!offline_program) - stack_trace("Holodeck console created without an offline program") - qdel(src) - return - - else - linked.linked = src - var/area/my_area = get_area(src) - if(my_area) - linked.power_usage = my_area.power_usage - else - linked.power_usage = list(AREA_USAGE_LEN) - - bottom_left = locate(linked.x, linked.y, z) - COOLDOWN_START(src, holodeck_cooldown, HOLODECK_CD) - generate_program_list() - load_program(offline_program,TRUE) - -///adds all programs that this holodeck has access to, and separates the restricted and unrestricted ones -/obj/machinery/computer/holodeck/proc/generate_program_list() - for(var/typekey in subtypesof(program_type)) - var/datum/map_template/holodeck/program = typekey - var/list/info_this = list("id" = initial(program.template_id), "name" = initial(program.name)) - if(initial(program.restricted) && (initial(program.access_flags) & holodeck_access)) - LAZYADD(emag_programs, list(info_this)) - else if (initial(program.access_flags) & holodeck_access) - LAZYADD(program_cache, list(info_this)) - -/obj/machinery/computer/holodeck/ui_interact(mob/user, datum/tgui/ui) - ui = SStgui.try_update_ui(user, src, ui) - if(!ui) - ui = new(user, src, "Holodeck", name) - ui.open() - -/obj/machinery/computer/holodeck/ui_data(mob/user) - var/list/data = list() - - data["default_programs"] = program_cache - if(obj_flags & EMAGGED) - data["emagged"] = TRUE - data["emag_programs"] = emag_programs - data["program"] = program - data["can_toggle_safety"] = issilicon(user) || isAdminGhostAI(user) - return data - -/obj/machinery/computer/holodeck/ui_act(action, params) - . = ..() - if(.) - return - . = TRUE - switch(action) - if("load_program") - var/program_to_load = params["id"] - - var/list/checked = program_cache.Copy() - if (obj_flags & EMAGGED) - checked |= emag_programs - var/valid = FALSE //dont tell security about this - - for (var/prog in checked)//checks if program_to_load is any one of the loadable programs, if it isnt then it rejects it - var/list/check_list = prog - if (check_list["id"] == program_to_load) - valid = TRUE - break - if (!valid) - return FALSE - //load the map_template that program_to_load represents - if(program_to_load) - load_program(program_to_load) - if("safety") - if((obj_flags & EMAGGED) && program) - emergency_shutdown() - nerf(obj_flags & EMAGGED,FALSE) - obj_flags ^= EMAGGED - say("Safeties reset. Restarting...") - -///this is what makes the holodeck not spawn anything on broken tiles (space and non engine plating / non holofloors) -/datum/map_template/holodeck/update_blacklist(turf/placement, list/input_blacklist) - for (var/_turf in get_affected_turfs(placement)) - var/turf/possible_blacklist = _turf - if (possible_blacklist.holodeck_compatible) - continue - input_blacklist[possible_blacklist] = TRUE - -///loads the template whose id string it was given ("offline_program" loads datum/map_template/holodeck/offline) -/obj/machinery/computer/holodeck/proc/load_program(map_id, force = FALSE, add_delay = TRUE) - if (program == map_id) - return - - if (is_operational)//load_program is called once with a timer (in toggle_power) we dont want this to load anything if its off - map_id = offline_program - force = TRUE - - if ((!COOLDOWN_FINISHED(src, holodeck_cooldown) && !force) || spawning_simulation) - say("ERROR. Recalibrating projection apparatus.") - return - - if (add_delay) - COOLDOWN_START(src, holodeck_cooldown, (damaged ? HOLODECK_CD + HOLODECK_DMG_CD : HOLODECK_CD)) - if (damaged && floorcheck()) - damaged = FALSE - - spawning_simulation = TRUE - active = (map_id != offline_program) - use_power = active + IDLE_POWER_USE - program = map_id - - //clear the items from the previous program - for (var/_item in spawned) - var/obj/holo_item = _item - derez(holo_item) - - for (var/_effect in effects) - var/obj/effect/holodeck_effect/holo_effect = _effect - effects -= holo_effect - holo_effect.deactivate(src) - - //makes sure that any time a holoturf is inside a baseturf list (e.g. if someone put a wall over it) its set to the OFFLINE turf - //so that you cant bring turfs from previous programs into other ones (like putting the plasma burn turf into lounge for example) - for (var/turf/closed/holo_turf in linked) - for (var/_baseturf in holo_turf.baseturfs) - if (ispath(_baseturf, /turf/open/floor/holofloor)) - holo_turf.baseturfs -= _baseturf - holo_turf.baseturfs += /turf/open/floor/holofloor/plating - - template = SSmapping.holodeck_templates[map_id] - template.load(bottom_left) //this is what actually loads the holodeck simulation into the map - - spawned = template.created_atoms //populate the spawned list with the atoms belonging to the holodeck - - nerf(!(obj_flags & EMAGGED)) - finish_spawn() - -///finalizes objects in the spawned list -/obj/machinery/computer/holodeck/proc/finish_spawn() - //this is used for holodeck effects (like spawners). otherwise they dont do shit - //holo effects are taken out of the spawned list and added to the effects list - //turfs and overlay objects are taken out of the spawned list - //objects get resistance flags added to them - for (var/_atom in spawned) - var/atom/atoms = _atom - - if (isturf(atoms) || istype(atoms, /obj/effect/overlay/vis)) //ssatoms - spawned -= atoms - continue - - atoms.flags_1 |= HOLOGRAM_1 - RegisterSignal(atoms, COMSIG_PARENT_PREQDELETED, PROC_REF(remove_from_holo_lists)) - - if (isholoeffect(atoms))//activates holo effects and transfers them from the spawned list into the effects list - var/obj/effect/holodeck_effect/holo_effect = atoms - effects += holo_effect - spawned -= holo_effect - var/atom/active_effect = holo_effect.activate(src) - if(istype(active_effect) || islist(active_effect)) - spawned += active_effect // we want mobs or objects spawned via holoeffects to be tracked as objects - continue - - if (isobj(atoms)) - var/obj/holo_object = atoms - holo_object.resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - - if (isstructure(holo_object)) - holo_object.flags_1 |= NODECONSTRUCT_1 - continue - - if (ismachinery(holo_object)) - var/obj/machinery/machines = holo_object - machines.flags_1 |= NODECONSTRUCT_1 - machines.power_change() - - if(istype(machines, /obj/machinery/button)) - var/obj/machinery/button/buttons = machines - buttons.setup_device() - spawning_simulation = FALSE - -///this qdels holoitems that should no longer exist for whatever reason -/obj/machinery/computer/holodeck/proc/derez(obj/object, silent = TRUE, forced = FALSE) - if(!object) - return - - spawned -= object - UnregisterSignal(object, COMSIG_PARENT_PREQDELETED) - var/turf/target_turf = get_turf(object) - for(var/c in object) //make sure that things inside of a holoitem are moved outside before destroying it - var/atom/movable/object_contents = c - object_contents.forceMove(target_turf) - - if(!silent) - visible_message("[object] fades away!") - - qdel(object) - -/obj/machinery/computer/holodeck/proc/remove_from_holo_lists(datum/to_remove, _forced) - spawned -= to_remove - UnregisterSignal(to_remove, COMSIG_PARENT_PREQDELETED) - -/obj/machinery/computer/holodeck/process() - if(damaged && prob(10)) - for(var/turf/T in linked) - if(prob(5)) - do_sparks(2, 1, T) - return - . = ..() - if(!. || program == offline_program)//we dont need to scan the holodeck if the holodeck is offline - return - - if(!floorcheck()) //if any turfs in the floor of the holodeck are broken - emergency_shutdown() - damaged = TRUE - visible_message("The holodeck overloads!") - for(var/turf/holo_turf in linked) - if(prob(30)) - do_sparks(2, 1, holo_turf) - SSexplosions.lowturf += holo_turf - holo_turf.hotspot_expose(1000,500,1) - - if(!(obj_flags & EMAGGED)) - for(var/item in spawned) - if(!(get_turf(item) in linked)) - derez(item) - for(var/_effect in effects) - var/obj/effect/holodeck_effect/holo_effect = _effect - holo_effect.tick() - active_power_usage = 50 + spawned.len * 3 + effects.len * 5 - -/obj/machinery/computer/holodeck/proc/toggle_power(toggleOn = FALSE) - if(active == toggleOn) - return - - if(toggleOn) - if(last_program && (last_program != offline_program)) - addtimer(CALLBACK(src, PROC_REF(load_program), last_program, TRUE), 25) - active = TRUE - else - last_program = program - load_program(offline_program, TRUE) - active = FALSE - -/obj/machinery/computer/holodeck/power_change() - . = ..() - INVOKE_ASYNC(src, PROC_REF(toggle_power), !machine_stat) - -///shuts down the holodeck and force loads the offline_program -/obj/machinery/computer/holodeck/proc/emergency_shutdown() - last_program = program - active = FALSE - load_program(offline_program, TRUE) - -///returns TRUE if the entire floor of the holodeck is intact, returns FALSE if any are broken -/obj/machinery/computer/holodeck/proc/floorcheck() - for(var/turf/holo_floor in linked) - if(isspaceturf(holo_floor)) - return FALSE - if(!holo_floor.intact) - return FALSE - return TRUE - -///changes all weapons in the holodeck to do stamina damage if set -/obj/machinery/computer/holodeck/proc/nerf(nerf_this, is_loading = TRUE) - if (!nerf_this && is_loading) - return - for(var/obj/item/to_be_nerfed in spawned) - to_be_nerfed.damtype = nerf_this ? STAMINA : initial(to_be_nerfed.damtype) - for(var/to_be_nerfed in effects) - var/obj/effect/holodeck_effect/holo_effect = to_be_nerfed - holo_effect.safety(nerf_this) - -/obj/machinery/computer/holodeck/emag_act(mob/user) - if(obj_flags & EMAGGED) - return - if(!LAZYLEN(emag_programs)) - to_chat(user, "[src] does not seem to have a card swipe port. It must be an inferior model.") - return - playsound(src, "sparks", 75, TRUE) - obj_flags |= EMAGGED - to_chat(user, "You vastly increase projector power and override the safety and security protocols.") - say("Warning. Automatic shutoff and derezzing protocols have been corrupted. Please call Nanotrasen maintenance and do not use the simulator.") - log_game("[key_name(user)] emagged the Holodeck Control Console") - nerf(!(obj_flags & EMAGGED),FALSE) - -/obj/machinery/computer/holodeck/emp_act(severity) - . = ..() - if(. & EMP_PROTECT_SELF) - return - emergency_shutdown() - -/obj/machinery/computer/holodeck/ex_act(severity, target) - emergency_shutdown() - return ..() - -/obj/machinery/computer/holodeck/Destroy() - emergency_shutdown() - if(linked) - linked.linked = null - linked.power_usage = list(AREA_USAGE_LEN) - return ..() - -/obj/machinery/computer/holodeck/blob_act(obj/structure/blob/B) - emergency_shutdown() - return ..() - -/obj/machinery/computer/holodeck/offstation //second holodeck if you want to add one to a ruin :flushed: - name = "holodeck control console" - desc = "A computer used to control a nearby holodeck." - offline_program = "holodeck_offline" - holodeck_access = HOLODECK_DEBUG | STATION_HOLODECK - mapped_start_area = /area/holodeck/rec_center/offstation_one - -#undef HOLODECK_CD -#undef HOLODECK_DMG_CD diff --git a/code/modules/holodeck/holo_effect.dm b/code/modules/holodeck/holo_effect.dm deleted file mode 100644 index 122c852fbc9a..000000000000 --- a/code/modules/holodeck/holo_effect.dm +++ /dev/null @@ -1,121 +0,0 @@ -/* - The holodeck activates these shortly after the program loads, - and deactivates them immediately before changing or disabling the holodeck. - - These remove snowflake code for special holodeck functions. -*/ -/obj/effect/holodeck_effect - icon = 'icons/hud/screen_gen.dmi' - icon_state = "x2" - invisibility = INVISIBILITY_ABSTRACT - -/obj/effect/holodeck_effect/proc/activate(obj/machinery/computer/holodeck/HC) - return - -/obj/effect/holodeck_effect/proc/deactivate(obj/machinery/computer/holodeck/HC) - qdel(src) - return - -// Called by the holodeck computer as long as the program is running -/obj/effect/holodeck_effect/proc/tick(obj/machinery/computer/holodeck/HC) - return - -/obj/effect/holodeck_effect/proc/safety(active) - return - - -// Generates a holodeck-tracked card deck -/obj/effect/holodeck_effect/cards - icon = 'icons/obj/toy.dmi' - icon_state = "deck_nanotrasen_full" - var/obj/item/toy/cards/deck/deck - -/obj/effect/holodeck_effect/cards/activate(obj/machinery/computer/holodeck/HC) - deck = new(loc) - safety(!(HC.obj_flags & EMAGGED)) - deck.holo = HC - RegisterSignal(deck, COMSIG_PARENT_QDELETING, PROC_REF(handle_card_delete)) - return deck - -/obj/effect/holodeck_effect/cards/proc/handle_card_delete(datum/source) - SIGNAL_HANDLER - deck = null - -/obj/effect/holodeck_effect/cards/safety(active) - if(!deck) - return - if(active) - deck.card_hitsound = null - deck.card_force = 0 - deck.card_throwforce = 0 - deck.card_throw_speed = 3 - deck.card_throw_range = 7 - deck.card_attack_verb = list("attacked") - else - deck.card_hitsound = 'sound/weapons/bladeslice.ogg' - deck.card_force = 5 - deck.card_throwforce = 10 - deck.card_throw_speed = 3 - deck.card_throw_range = 7 - deck.card_attack_verb = list("attacked", "sliced", "diced", "slashed", "cut") - - -/obj/effect/holodeck_effect/sparks/activate(obj/machinery/computer/holodeck/HC) - var/turf/T = get_turf(src) - if(T) - var/datum/effect_system/spark_spread/s = new - s.set_up(3, 1, T) - s.start() - T.set_temperature(5000) - T.hotspot_expose(50000,50000,1) - - - -/obj/effect/holodeck_effect/mobspawner - var/mobtype = /mob/living/simple_animal/hostile/carp/holocarp - var/mob/our_mob = null - -/obj/effect/holodeck_effect/mobspawner/activate(obj/machinery/computer/holodeck/HC) - if(islist(mobtype)) - mobtype = pick(mobtype) - our_mob = new mobtype(loc) - our_mob.flags_1 |= HOLOGRAM_1 - - // these vars are not really standardized but all would theoretically create stuff on death - for(var/v in list("butcher_results","corpse","weapon1","weapon2","blood_volume") & our_mob.vars) - our_mob.vars[v] = null - RegisterSignal(our_mob, COMSIG_PARENT_QDELETING, PROC_REF(handle_mob_delete)) - return our_mob - -/obj/effect/holodeck_effect/mobspawner/deactivate(obj/machinery/computer/holodeck/HC) - if(our_mob) - HC.derez(our_mob) - qdel(src) - -/obj/effect/holodeck_effect/mobspawner/proc/handle_mob_delete(datum/source) - SIGNAL_HANDLER - our_mob = null - -/obj/effect/holodeck_effect/mobspawner/pet - mobtype = list( - /mob/living/simple_animal/butterfly, /mob/living/simple_animal/chick/holo, - /mob/living/simple_animal/pet/cat, /mob/living/simple_animal/pet/cat/kitten, - /mob/living/simple_animal/pet/dog/corgi, /mob/living/simple_animal/pet/dog/corgi/puppy, - /mob/living/simple_animal/pet/dog/pug, /mob/living/simple_animal/pet/fox) - -/obj/effect/holodeck_effect/mobspawner/bee - mobtype = /mob/living/simple_animal/hostile/poison/bees/toxin - -/obj/effect/holodeck_effect/mobspawner/monkey - mobtype = /mob/living/simple_animal/holodeck_monkey - -/obj/effect/holodeck_effect/mobspawner/penguin - mobtype = /mob/living/simple_animal/pet/penguin/emperor - -/obj/effect/holodeck_effect/mobspawner/penguin/Initialize() - if(prob(1)) - mobtype = /mob/living/simple_animal/pet/penguin/emperor/shamebrero - return ..() - -/obj/effect/holodeck_effect/mobspawner/penguin_baby - mobtype = /mob/living/simple_animal/pet/penguin/baby diff --git a/code/modules/holodeck/holodeck_map_templates.dm b/code/modules/holodeck/holodeck_map_templates.dm deleted file mode 100644 index 2f4a790a3366..000000000000 --- a/code/modules/holodeck/holodeck_map_templates.dm +++ /dev/null @@ -1,198 +0,0 @@ -/datum/map_template/holodeck - var/template_id - var/description - var/access_flags //bitflags representing what holodeck is allowed to access them - var/restricted = FALSE - var/datum/parsed_map/lastparsed - - should_place_on_top = FALSE - returns_created_atoms = TRUE - keep_cached_map = TRUE - - var/obj/machinery/computer/holodeck/linked - -/datum/map_template/holodeck/offline - name = "Holodeck - Offline" - template_id = "holodeck_offline" - description = "benis" - mappath = "_maps/templates/holodeck_offline.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/emptycourt - name = "Holodeck - Empty Court" - template_id = "holodeck_emptycourt" - description = "benis" - mappath = "_maps/templates/holodeck_emptycourt.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/dodgeball - name = "Holodeck - Dodgeball Court" - template_id = "holodeck_dodgeball" - description = "benis" - mappath = "_maps/templates/holodeck_dodgeball.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/basketball - name = "Holodeck - Basketball Court" - template_id = "holodeck_basketball" - description = "benis" - mappath = "_maps/templates/holodeck_basketball.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/thunderdome - name = "Holodeck - Thunderdome Arena" - template_id = "holodeck_thunderdome" - description = "benis" - mappath = "_maps/templates/holodeck_thunderdome.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/beach - name = "Holodeck - Beach" - template_id = "holodeck_beach" - description = "benis" - mappath = "_maps/templates/holodeck_beach.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/lounge - name = "Holodeck - Lounge" - template_id = "holodeck_lounge" - description = "benis" - mappath = "_maps/templates/holodeck_lounge.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/petpark - name = "Holodeck - Pet Park" - template_id = "holodeck_petpark" - description = "benis" - mappath = "_maps/templates/holodeck_petpark.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/firingrange - name = "Holodeck - Firing Range" - template_id = "holodeck_firingrange" - description = "benis" - mappath = "_maps/templates/holodeck_firingrange.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/anime_school - name = "Holodeck - Anime School" - template_id = "holodeck_animeschool" - description = "benis" - mappath = "_maps/templates/holodeck_animeschool.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/chapelcourt - name = "Holodeck - Chapel Courtroom" - template_id = "holodeck_chapelcourt" - description = "benis" - mappath = "_maps/templates/holodeck_chapelcourt.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/spacechess - name = "Holodeck - Space Chess" - template_id = "holodeck_spacechess" - description = "benis" - mappath = "_maps/templates/holodeck_spacechess.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/spacecheckers - name = "Holodeck - Space Checkers" - template_id = "holodeck_spacecheckers" - description = "benis" - mappath = "_maps/templates/holodeck_spacecheckers.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/kobayashi - name = "Holodeck - Kobayashi Maru" - template_id = "holodeck_kobayashi" - description = "benis" - mappath = "_maps/templates/holodeck_kobayashi.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/winterwonderland - name = "Holodeck - Winter Wonderland" - template_id = "holodeck_winterwonderland" - description = "benis" - mappath = "_maps/templates/holodeck_winterwonderland.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/photobooth - name = "Holodeck - Photobooth" - template_id = "holodeck_photobooth" - description = "benis" - mappath = "_maps/templates/holodeck_photobooth.dmm" - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/skatepark - name = "Holodeck - Skatepark" - template_id = "holodeck_skatepark" - description = "benis" - mappath = "_maps/templates/holodeck_skatepark.dmm" - access_flags = STATION_HOLODECK - -//bad evil no good programs - -/datum/map_template/holodeck/medicalsim - name = "Holodeck - Emergency Medical" - template_id = "holodeck_medicalsim" - description = "benis" - mappath = "_maps/templates/holodeck_medicalsim.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/thunderdome1218 - name = "Holodeck - 1218 AD" - template_id = "holodeck_thunderdome1218" - description = "benis" - mappath = "_maps/templates/holodeck_thunderdome1218.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/burntest - name = "Holodeck - Atmospheric Burn Test" - template_id = "holodeck_burntest" - description = "benis" - mappath = "_maps/templates/holodeck_burntest.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/wildlifesim - name = "Holodeck - Wildlife Simulation" - template_id = "holodeck_wildlifesim" - description = "benis" - mappath = "_maps/templates/holodeck_wildlifesim.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/holdoutbunker - name = "Holodeck - Holdout Bunker" - template_id = "holodeck_holdoutbunker" - description = "benis" - mappath = "_maps/templates/holodeck_holdoutbunker.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/anthophillia - name = "Holodeck - Anthophillia" - template_id = "holodeck_anthophillia" - description = "benis" - mappath = "_maps/templates/holodeck_anthophillia.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -/datum/map_template/holodeck/refuelingstation - name = "Holodeck - Refueling Station" - template_id = "holodeck_refuelingstation" - description = "benis" - mappath = "_maps/templates/holodeck_refuelingstation.dmm" - restricted = TRUE - access_flags = STATION_HOLODECK - -//flag debug holodeck - -/datum/map_template/holodeck/gamer - name = "Holodeck - Gamer" - template_id = "holodeck_gamer" - description = "benis" - mappath = "_maps/templates/holodeck_gamer.dmm" - access_flags = HOLODECK_DEBUG diff --git a/code/modules/holodeck/mobs.dm b/code/modules/holodeck/mobs.dm deleted file mode 100644 index 121989bf1e71..000000000000 --- a/code/modules/holodeck/mobs.dm +++ /dev/null @@ -1,23 +0,0 @@ -/* - Mobs -*/ - -/mob/living/simple_animal/holodeck_monkey - name = "monkey" - desc = "A holographic creature fond of bananas." - icon = 'icons/mob/monkey.dmi' - icon_state = "monkey1" - icon_living = "monkey1" - icon_dead = "monkey1_dead" - speak_emote = list("chimpers") - emote_hear = list("chimpers.") - emote_see = list("scratches.", "looks around.") - speak_chance = 1 - turns_per_move = 2 - butcher_results = list() - response_help_continuous = "pets" - response_help_simple = "pet" - response_disarm_continuous = "pushes aside" - response_disarm_simple = "push aside" - response_harm_continuous = "kicks" - response_harm_simple = "kick" diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm index b69c05e34653..59e9a46341e6 100644 --- a/code/modules/holodeck/turfs.dm +++ b/code/modules/holodeck/turfs.dm @@ -1,6 +1,5 @@ /turf/open/floor/holofloor icon_state = "floor" - holodeck_compatible = TRUE thermal_conductivity = 0 flags_1 = NONE var/direction = SOUTH diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index 74598b3eb678..2bd5c2fd4667 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -192,6 +192,8 @@ ///The icon this outfit's ID will have when shown on a sechud and ID cards. See [icons\mob\hud.dmi] for a list of icons. Leave null for default. var/job_icon + // the background of the job icon + var/faction_icon var/alt_uniform @@ -277,6 +279,7 @@ if(H.age) C.registered_age = H.age C.job_icon = job_icon + C.faction_icon = faction_icon C.update_label() for(var/A in SSeconomy.bank_accounts) var/datum/bank_account/B = A diff --git a/code/modules/jobs/job_types/assistant.dm b/code/modules/jobs/job_types/assistant.dm index 8035212c27c6..42ca9b6de9fc 100644 --- a/code/modules/jobs/job_types/assistant.dm +++ b/code/modules/jobs/job_types/assistant.dm @@ -45,153 +45,3 @@ Assistant uniform = /obj/item/clothing/under/utility/skirt else uniform = /obj/item/clothing/under/utility - -/datum/outfit/job/assistant/entertainer - name = "Assistant (Entertainer)" - r_hand = /obj/item/bikehorn //comedy - -/datum/outfit/job/assistant/engineeringspecialist - name = "Assistant (Engineering Specialist)" - accessory = /obj/item/clothing/accessory/armband/engine - -/datum/outfit/job/assistant/medicalspecialist - name = "Assistant (Medical Specialist)" - uniform = /obj/item/clothing/under/color/white - accessory = /obj/item/clothing/accessory/armband/med - -/datum/outfit/job/assistant/sciencespecialist - name = "Assistant (Science Specialist)" - uniform = /obj/item/clothing/under/color/white - accessory = /obj/item/clothing/accessory/armband/science - -/datum/outfit/job/assistant/deckhand - name = "Assistant (Deckhand)" - accessory = /obj/item/clothing/accessory/armband/cargo - -//Shiptest outfits - -/datum/outfit/job/assistant/minutemen - name = "Volunteer (Minutemen)" - - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - backpack = /obj/item/storage/backpack/security/cmm - -/datum/outfit/job/assistant/inteq - name = "IRMG Recruit (Inteq)" - uniform = /obj/item/clothing/under/syndicate/inteq - -/datum/outfit/job/assistant/intern - name = "Assistant (Intern)" - uniform = /obj/item/clothing/under/suit/black - neck = /obj/item/clothing/neck/tie - shoes = /obj/item/clothing/shoes/laceup - r_pocket = /obj/item/pen/fountain - -/datum/outfit/job/assistant/receptionist - name = "Assistant (Receptionist)" - uniform = /obj/item/clothing/under/suit/beige - glasses = /obj/item/clothing/glasses/regular/hipster - shoes = /obj/item/clothing/shoes/laceup - r_pocket = /obj/item/pen/fourcolor - l_pocket = /obj/item/clipboard - -/datum/outfit/job/assistant/receptionist/pre_equip(mob/living/carbon/human/H) - ..() - switch(H.jumpsuit_style) - if(PREF_SUIT) - uniform = initial(uniform) - if(PREF_ALTSUIT) - uniform = /obj/item/clothing/under/suit/blacktwopiece - if(PREF_SKIRT) - uniform = /obj/item/clothing/under/dress/skirt/plaid - else - uniform = /obj/item/clothing/under/suit/beige - -/datum/outfit/job/assistant/pirate - name = "Assistant (Pirate)" - - uniform = /obj/item/clothing/under/costume/sailor - shoes = /obj/item/clothing/shoes/jackboots - -/datum/outfit/job/assistant/corporate - name = "Business Associate" - - uniform = /obj/item/clothing/under/suit/black - shoes = /obj/item/clothing/shoes/laceup - suit = /obj/item/clothing/suit/toggle/lawyer/black - -/datum/outfit/job/assistant/independent/crewmatefancy - name = "Crewmate (Independent)" - - uniform = /obj/item/clothing/under/misc/assistantformal - shoes = /obj/item/clothing/shoes/laceup - gloves = /obj/item/clothing/gloves/color/white - -/datum/outfit/job/assistant/ex_prisoner - name = "Assistant (Ex-Prisoner)" - - glasses = /obj/item/clothing/glasses/sunglasses - uniform = /obj/item/clothing/under/rank/prisoner - shoes = /obj/item/clothing/shoes/sneakers/orange - accessory = /obj/item/clothing/accessory/armband/deputy - -/datum/outfit/job/assistant/waiter - name = "Assistant (Waiter)" - - uniform = /obj/item/clothing/under/suit/waiter - shoes = /obj/item/clothing/shoes/laceup - ears = /obj/item/radio/headset/headset_srv - gloves = /obj/item/clothing/gloves/color/white - -/datum/outfit/job/assistant/artist - name = "Assistant (Artist)" - - uniform = /obj/item/clothing/under/suit/burgundy - suit = /obj/item/clothing/suit/toggle/suspenders - head = /obj/item/clothing/head/beret/black - shoes = /obj/item/clothing/shoes/laceup - gloves = /obj/item/clothing/gloves/color/white - accessory = /obj/item/clothing/neck/scarf/darkblue - -/datum/outfit/job/assistant/roumain - name = "Shadow (Saint-Roumain Militia)" - - uniform = /obj/item/clothing/under/suit/roumain - alt_uniform = null - shoes = /obj/item/clothing/shoes/workboots/mining - suit = /obj/item/clothing/suit/armor/roumain/shadow - - head = /obj/item/clothing/head/cowboy/sec/roumain/shadow - -/datum/outfit/job/assistant/roumain/post_equip(mob/living/carbon/human/H) - H.faction |= list("roumain") - -/datum/outfit/job/assistant/pharma - name = "Pharmacology Student" - - uniform = /obj/item/clothing/under/rank/medical/ - shoes = /obj/item/clothing/shoes/sneakers/white - accessory = /obj/item/clothing/neck/scarf/orange - l_pocket = /obj/item/pda/medical - r_pocket = /obj/item/reagent_containers/pill/floorpill - belt = /obj/item/reagent_scanner - backpack_contents = list(/obj/item/book/manual/wiki/chemistry=1) - -/datum/outfit/job/assistant/aipirate - name = "Nodesman" - - uniform = /obj/item/clothing/under/utility - head = /obj/item/clothing/head/soft/black - shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat/survival - gloves = /obj/item/clothing/gloves/combat - implants = list(/obj/item/implant/radio) - -/datum/outfit/job/assistant/frontiersmen - name = "Deckhand (frontiersmen)" - - uniform = /obj/item/clothing/under/rank/security/officer/frontier - shoes = /obj/item/clothing/shoes/jackboots - r_pocket = /obj/item/radio - head = /obj/item/clothing/head/beret/sec/frontier - ears = /obj/item/radio/headset/pirate diff --git a/code/modules/jobs/job_types/atmospheric_technician.dm b/code/modules/jobs/job_types/atmospheric_technician.dm index f00d87eb6ba4..3dc911b137ac 100644 --- a/code/modules/jobs/job_types/atmospheric_technician.dm +++ b/code/modules/jobs/job_types/atmospheric_technician.dm @@ -31,20 +31,3 @@ box = /obj/item/storage/box/survival/engineer pda_slot = ITEM_SLOT_LPOCKET backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) - -/datum/outfit/job/atmos/rig - name = "Atmospheric Technician (Hardsuit)" - - mask = /obj/item/clothing/mask/gas/atmos - suit = /obj/item/clothing/suit/space/hardsuit/engine/atmos - suit_store = /obj/item/tank/internals/oxygen - internals_slot = ITEM_SLOT_SUITSTORE - -/datum/outfit/job/atmos/frontiersmen - name = "Atmospheric Technician (Frontiersmen)" - - uniform = /obj/item/clothing/under/rank/security/officer/frontier - suit = /obj/item/clothing/suit/hooded/wintercoat/engineering/atmos - head = /obj/item/clothing/head/hardhat - ears = /obj/item/radio/headset/pirate - mask = /obj/item/clothing/mask/gas/atmos diff --git a/code/modules/jobs/job_types/bartender.dm b/code/modules/jobs/job_types/bartender.dm index f704f1c62139..9c5d28e693e8 100644 --- a/code/modules/jobs/job_types/bartender.dm +++ b/code/modules/jobs/job_types/bartender.dm @@ -31,16 +31,3 @@ if(H.age < AGE_MINOR) W.registered_age = AGE_MINOR to_chat(H, "You're not technically old enough to access or serve alcohol, but your ID has been discreetly modified to display your age as [AGE_MINOR]. Try to keep that a secret!") - -/datum/outfit/job/bartender/pharma - name = "Mixologist" - - backpack_contents = list(/obj/item/storage/box/syringes=1, /obj/item/storage/box/drinkingglasses = 1) - ears = /obj/item/radio/headset/headset_med - suit = /obj/item/clothing/suit/toggle/labcoat - alt_suit = /obj/item/clothing/suit/armor/vest - l_pocket = /obj/item/pda/bar - r_pocket = /obj/item/reagent_containers/food/drinks/shaker - belt = /obj/item/storage/belt - gloves = /obj/item/clothing/gloves/color/latex/nitrile - uniform = /obj/item/clothing/under/suit/black diff --git a/code/modules/jobs/job_types/botanist.dm b/code/modules/jobs/job_types/botanist.dm index 17820864e57f..130385df95f1 100644 --- a/code/modules/jobs/job_types/botanist.dm +++ b/code/modules/jobs/job_types/botanist.dm @@ -26,12 +26,3 @@ backpack = /obj/item/storage/backpack/botany satchel = /obj/item/storage/backpack/satchel/hyd courierbag = /obj/item/storage/backpack/messenger/hyd - -/datum/outfit/job/botanist/pharma - name = "Herbalist" - - ears = /obj/item/radio/headset/headset_med - belt = /obj/item/storage/bag/plants - l_pocket = /obj/item/pda/botanist - suit = /obj/item/clothing/suit/apron/overalls - uniform = /obj/item/clothing/under/utility diff --git a/code/modules/jobs/job_types/brig_physician.dm b/code/modules/jobs/job_types/brig_physician.dm index d27f2df6b859..124c1ec791df 100644 --- a/code/modules/jobs/job_types/brig_physician.dm +++ b/code/modules/jobs/job_types/brig_physician.dm @@ -28,20 +28,3 @@ l_hand = /obj/item/storage/firstaid/regular head = /obj/item/clothing/head/soft/sec/brig_phys implants = list(/obj/item/implant/mindshield) - - -/datum/outfit/job/brig_phys/securitymedic - name = "Brig Physician (Security Medic)" - - uniform = /obj/item/clothing/under/rank/security/brig_phys/nt - suit = /obj/item/clothing/suit/toggle/labcoat/brig_phys - suit_store = /obj/item/flashlight/pen - alt_suit = null - -/datum/outfit/job/brig_phys/executionsupervisor - name = "Brig Physician (Execution Supervisor)" - - uniform = /obj/item/clothing/under/rank/security/brig_phys/nt - suit = /obj/item/clothing/suit/toggle/labcoat/brig_phys - l_pocket = /obj/item/reagent_containers/syringe - alt_suit = null diff --git a/code/modules/jobs/job_types/captain.dm b/code/modules/jobs/job_types/captain.dm index 78e7eb8dde74..786f9e798e43 100644 --- a/code/modules/jobs/job_types/captain.dm +++ b/code/modules/jobs/job_types/captain.dm @@ -41,175 +41,3 @@ accessory = /obj/item/clothing/accessory/medal/gold/captain chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/captain) - -/datum/outfit/job/captain/hardsuit - name = "Captain (Hardsuit)" - - mask = /obj/item/clothing/mask/gas/atmos/captain - suit = /obj/item/clothing/suit/space/hardsuit/swat/captain - suit_store = /obj/item/tank/internals/oxygen - -/datum/outfit/job/captain/nt - name = "Captain (Nanotrasen)" - - ears = /obj/item/radio/headset/nanotrasen/captain - uniform = /obj/item/clothing/under/rank/command/captain/nt - gloves = /obj/item/clothing/gloves/color/captain/nt - shoes = /obj/item/clothing/shoes/laceup - head = /obj/item/clothing/head/caphat/nt - -/datum/outfit/job/captain/nt/heron - name = "Captain (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/centcom/officer - gloves = /obj/item/clothing/gloves/combat - head = /obj/item/clothing/head/centhat - suit = /obj/item/clothing/suit/armor/vest/bulletproof - -/datum/outfit/job/captain/pirate - name = "Captain (Pirate)" - - ears = /obj/item/radio/headset/pirate/captain - uniform = /obj/item/clothing/under/costume/pirate - shoes = /obj/item/clothing/shoes/jackboots - head = /obj/item/clothing/head/pirate/captain - suit = /obj/item/clothing/suit/pirate/captain - -/datum/outfit/job/captain/corporate - name = "Captain (Corporate)" - uniform = /obj/item/clothing/under/suit/navy - shoes = /obj/item/clothing/shoes/laceup - glasses = /obj/item/clothing/glasses/sunglasses - gloves = null - -/datum/outfit/job/captain/western - name = "Captain (Western)" - alt_uniform = null - shoes = /obj/item/clothing/shoes/cowboy/white - head = /obj/item/clothing/head/caphat/cowboy - glasses = /obj/item/clothing/glasses/sunglasses - alt_suit = null - -/datum/outfit/job/captain/minutemen - name = "Captain (Colonial Minutemen)" - - ears = /obj/item/radio/headset/heads/captain/alt - uniform = /obj/item/clothing/under/rank/command/minutemen - alt_uniform = null - suit = /obj/item/clothing/suit/toggle/lawyer/minutemen - alt_suit = null - - shoes = /obj/item/clothing/shoes/combat - head = /obj/item/clothing/head/cowboy/sec/minutemen - backpack = /obj/item/storage/backpack - backpack_contents = list(/obj/item/storage/box/ids=1,\ - /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) - -/datum/outfit/job/captain/minutemen/general - name = "General (Colonial Minutemen)" - - head = /obj/item/clothing/head/caphat/minutemen - ears = /obj/item/radio/headset/heads/captain - uniform = /obj/item/clothing/under/rank/command/minutemen - suit = /obj/item/clothing/suit/armor/vest/capcarapace/minutemen - shoes = /obj/item/clothing/shoes/combat - - box = /obj/item/storage/box/survival/engineer/radio - backpack = /obj/item/storage/backpack - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/gun/ballistic/revolver/mateba=1) - -/datum/outfit/job/captain/independent/owner - name = "Private Ship Owner (Independent)" - - id = /obj/item/card/id/gold - uniform = /obj/item/clothing/under/suit/black - shoes = /obj/item/clothing/shoes/laceup - head = null - belt = null - gloves = null - accessory = null - ears = /obj/item/radio/headset/heads/captain - box = /obj/item/storage/box/survival - backpack = /obj/item/storage/backpack - satchel = /obj/item/storage/backpack/satchel/ - duffelbag = /obj/item/storage/backpack/duffelbag - courierbag = /obj/item/storage/backpack/messenger - backpack_contents = list(/obj/item/clothing/accessory/medal/gold/captain=1, /obj/item/spacecash/bundle/c10000=1) - -/datum/outfit/job/captain/inteq - name = "IRMG Vanguard (Inteq)" - - ears = /obj/item/radio/headset/inteq/alt/captain - uniform = /obj/item/clothing/under/syndicate/inteq - head = /obj/item/clothing/head/beret/sec/hos/inteq - glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq - mask = /obj/item/clothing/mask/gas/sechailer/inteq - belt = /obj/item/storage/belt/security/webbing/inteq - suit = /obj/item/clothing/suit/armor/hos/inteq - dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - r_pocket = /obj/item/assembly/flash/handheld - l_pocket = /obj/item/restraints/handcuffs - accessory = null - - courierbag = /obj/item/storage/backpack/messenger/inteq - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/pda/captain) - -/datum/outfit/job/captain/inteq/naked - name = "IRMG Vanguard (Inteq) (Naked)" - head = null - mask = null - glasses = null - belt = null - suit = null - gloves = null - suit_store = null - -/datum/outfit/job/captain/aipirate - name = "Nodesman (Command)" - - uniform = /obj/item/clothing/under/utility - alt_uniform = null - gloves = /obj/item/clothing/gloves/combat - suit = /obj/item/clothing/suit/armor/vest/marine/medium - alt_suit = null - dcoat = null - head = /obj/item/clothing/head/soft/black - shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat - implants = list(/obj/item/implant/radio) - accessory = null - -/datum/outfit/job/captain/frontiersmen - name = "Captain (Frontiersmen)" - - ears = /obj/item/radio/headset/pirate/alt/captain - uniform = /obj/item/clothing/under/rank/security/officer/frontier/admiral - head = /obj/item/clothing/head/caphat/frontier/admiral - glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq - mask = /obj/item/clothing/mask/gas/sechailer - suit = /obj/item/clothing/suit/armor/frontier - shoes = /obj/item/clothing/shoes/cowboy - gloves = /obj/item/clothing/gloves/combat - glasses = /obj/item/clothing/glasses/hud/security/sunglasses/eyepatch - - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/pda/captain) - -/datum/outfit/job/captain/nt/lp_lieutenant - name = "LP Lieutenant" - - implants = list(/obj/item/implant/mindshield) - ears = /obj/item/radio/headset/nanotrasen/alt/captain - id = /obj/item/card/id/lplieu - belt = /obj/item/pda/captain - gloves = /obj/item/clothing/gloves/color/black - uniform = /obj/item/clothing/under/rank/security/head_of_security/alt/lp - alt_uniform = /obj/item/clothing/under/rank/security/head_of_security/alt/skirt/lp - dcoat = /obj/item/clothing/suit/jacket - shoes = /obj/item/clothing/shoes/jackboots - head = /obj/item/clothing/head/beret/command - - satchel = /obj/item/storage/backpack/satchel/cap - duffelbag = /obj/item/storage/backpack/duffelbag/captain - courierbag = /obj/item/storage/backpack/messenger/com diff --git a/code/modules/jobs/job_types/cargo_technician.dm b/code/modules/jobs/job_types/cargo_technician.dm index 22f85ed9f57a..3fa729969013 100644 --- a/code/modules/jobs/job_types/cargo_technician.dm +++ b/code/modules/jobs/job_types/cargo_technician.dm @@ -23,27 +23,4 @@ l_hand = /obj/item/export_scanner backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) -//Shiptest outfits -/datum/outfit/job/cargo_tech/pilot - name = "Pilot" - - uniform = /obj/item/clothing/under/syndicate/camo - accessory = /obj/item/clothing/accessory/armband/cargo - suit = /obj/item/clothing/suit/jacket - shoes = /obj/item/clothing/shoes/jackboots - gloves = /obj/item/clothing/gloves/fingerless - glasses = /obj/item/clothing/glasses/sunglasses/big - - -/datum/outfit/job/cargo_tech/frontiersmen - name = "Cargo Tech (frontiersmen)" - - uniform = /obj/item/clothing/under/rank/security/officer/frontier - suit = /obj/item/clothing/suit/hazardvest - ears = /obj/item/radio/headset/pirate - shoes = /obj/item/clothing/shoes/workboots - head = /obj/item/clothing/head/soft - backpack_contents = list( - /obj/item/modular_computer/tablet/preset/cargo = 1, - ) diff --git a/code/modules/jobs/job_types/chaplain.dm b/code/modules/jobs/job_types/chaplain.dm index 9dd36c1e201a..870697476794 100644 --- a/code/modules/jobs/job_types/chaplain.dm +++ b/code/modules/jobs/job_types/chaplain.dm @@ -124,18 +124,3 @@ satchel = /obj/item/storage/backpack/cultpack chameleon_extras = /obj/item/stamp/chap - -/datum/outfit/job/chaplain/monk - name = "Chaplain (Monk)" - suit = /obj/item/clothing/suit/hooded/chaplainsuit/monkhabit - l_hand = /obj/item/storage/book/bible - -/datum/outfit/job/chaplain/imam - name = "Chaplain (Imam)" - head = /obj/item/clothing/head/taqiyahwhite - l_hand = /obj/item/storage/book/bible/koran - -/datum/outfit/job/chaplain/rabbi - name = "Chaplain (Rabbi)" - head = /obj/item/clothing/head/kippah - l_hand = /obj/item/storage/book/bible/torah diff --git a/code/modules/jobs/job_types/chemist.dm b/code/modules/jobs/job_types/chemist.dm index d98181af7324..c93b6d3119a2 100644 --- a/code/modules/jobs/job_types/chemist.dm +++ b/code/modules/jobs/job_types/chemist.dm @@ -29,70 +29,3 @@ box = /obj/item/storage/box/survival/medical chameleon_extras = /obj/item/gun/syringe - -//Alt jobs - -/datum/outfit/job/chemist/pharmacist - name = "Chemist (Pharmacist)" - jobtype = /datum/job/chemist - - glasses = null - alt_uniform = null - - backpack_contents = list(/obj/item/clothing/glasses/science=1) - -/datum/outfit/job/chemist/pharmacologist - name = "Chemist (Pharmacologist)" - - glasses = null - alt_uniform = null - suit = /obj/item/clothing/suit/toggle/labcoat/chemist/side - - backpack_contents = list(/obj/item/clothing/glasses/science=1) - -/datum/outfit/job/chemist/juniorchemist - name = "Chemist (Junior Chemist)" - - glasses = null - alt_uniform = null - suit = null - alt_suit = null - - backpack_contents = list(/obj/item/clothing/glasses/science=1) - -/datum/outfit/job/chemist/seniorchemist - name = "Chemist (Senior Chemist)" - - glasses = null - alt_uniform = null - shoes = /obj/item/clothing/shoes/laceup - suit = /obj/item/clothing/suit/toggle/lawyer/orange - alt_suit = /obj/item/clothing/suit/toggle/labcoat/chemist - dcoat = null - l_hand = null - suit_store = null - neck = /obj/item/clothing/neck/tie/orange - - backpack_contents = list(/obj/item/clothing/glasses/science=1) - -//Shiptest - -/datum/outfit/job/chemist/pharma - name = "Pharmacist" - - belt = /obj/item/storage/bag/chemistry - l_pocket =/obj/item/pda/chemist - r_pocket = /obj/item/storage/pill_bottle - suit = /obj/item/clothing/suit/longcoat/chemist - alt_suit = /obj/item/clothing/suit/toggle/labcoat/chemist/side - dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical - box = /obj/item/storage/box/survival/medical - gloves = /obj/item/clothing/gloves/color/latex - glasses = /obj/item/clothing/glasses/sunglasses - -/datum/outfit/job/chemist/minutemen - name = "Chemical Scientist(minutemen)" - - suit = /obj/item/clothing/suit/toggle/labcoat/chemist - ears = /obj/item/radio/headset/minutemen - diff --git a/code/modules/jobs/job_types/chief_engineer.dm b/code/modules/jobs/job_types/chief_engineer.dm index 5b862731db49..b828f2357159 100644 --- a/code/modules/jobs/job_types/chief_engineer.dm +++ b/code/modules/jobs/job_types/chief_engineer.dm @@ -45,78 +45,3 @@ box = /obj/item/storage/box/survival/engineer pda_slot = ITEM_SLOT_LPOCKET chameleon_extras = /obj/item/stamp/ce - -/datum/outfit/job/ce/rig - name = "Chief Engineer (Hardsuit)" - - mask = /obj/item/clothing/mask/breath - suit = /obj/item/clothing/suit/space/hardsuit/engine/elite - shoes = /obj/item/clothing/shoes/magboots/advance - suit_store = /obj/item/tank/internals/oxygen - glasses = /obj/item/clothing/glasses/meson/engine - gloves = /obj/item/clothing/gloves/color/yellow - head = null - internals_slot = ITEM_SLOT_SUITSTORE - -/datum/outfit/job/ce/engineeringcoordinator - name = "Chief Engineer (Engineering Coordinator)" - - belt = null - uniform = /obj/item/clothing/under/rank/engineering/chief_engineer - alt_uniform = null - alt_suit = /obj/item/clothing/suit/hazardvest - dcoat = null - shoes = /obj/item/clothing/shoes/laceup - head = /obj/item/clothing/head/hardhat/white - gloves = null - neck = /obj/item/clothing/neck/tie/green - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced=1, /obj/item/clothing/gloves/color/black=1) - -/datum/outfit/job/ce/inteq - name = "IRMG Artificer Class II (Inteq)" - - ears = /obj/item/radio/headset/inteq - uniform = /obj/item/clothing/under/syndicate/inteq/artificer - head = /obj/item/clothing/head/hardhat/white - mask = /obj/item/clothing/mask/gas/sechailer/inteq - dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - belt = /obj/item/storage/belt/utility/full - - courierbag = /obj/item/storage/backpack/messenger/inteq - -/datum/outfit/job/ce/nt - name = "Chief Engineer (NT)" - - head = /obj/item/clothing/head/beret/ce - belt = /obj/item/storage/belt/utility/full - suit = /obj/item/clothing/suit/hazardvest - -/datum/outfit/job/ce/frontiersmen - name = "Head Carpenter (Frontiersmen)" - - ears = /obj/item/radio/headset/pirate - uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer - head = /obj/item/clothing/head/hardhat/white - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - belt = /obj/item/storage/belt/utility/full - -/datum/outfit/job/ce/minutemen - name = "Foreman (Colonial Minutemen)" - - ears = /obj/item/radio/headset/minutemen/alt - uniform = /obj/item/clothing/under/rank/command/minutemen - alt_uniform = null - suit = /obj/item/clothing/suit/toggle/lawyer/minutemen - alt_suit = null - gloves = /obj/item/clothing/gloves/combat - belt = /obj/item/storage/belt/utility/full - shoes = /obj/item/clothing/shoes/combat - head = /obj/item/clothing/head/cowboy/sec/minutemen - backpack = /obj/item/storage/backpack - backpack_contents = list( - /obj/item/melee/classic_baton/telescopic=1, - /obj/item/modular_computer/tablet/preset/advanced = 1 - ) diff --git a/code/modules/jobs/job_types/chief_medical_officer.dm b/code/modules/jobs/job_types/chief_medical_officer.dm index f614aab080a0..d09b9ee6aa50 100644 --- a/code/modules/jobs/job_types/chief_medical_officer.dm +++ b/code/modules/jobs/job_types/chief_medical_officer.dm @@ -42,55 +42,3 @@ box = /obj/item/storage/box/survival/medical chameleon_extras = list(/obj/item/gun/syringe, /obj/item/stamp/cmo) - -/datum/outfit/job/cmo/hardsuit - name = "Chief Medical Officer (Hardsuit)" - - mask = /obj/item/clothing/mask/breath/medical - suit = /obj/item/clothing/suit/space/hardsuit/medical/cmo - suit_store = /obj/item/tank/internals/oxygen - r_pocket = /obj/item/flashlight/pen - -/datum/outfit/job/cmo/medicaldirector - name = "Chief Medical Officer (Medical Director)" - - alt_uniform = null - shoes = /obj/item/clothing/shoes/laceup - suit = /obj/item/clothing/suit/toggle/lawyer/cmo - alt_suit = /obj/item/clothing/suit/toggle/labcoat/cmo - neck = /obj/item/clothing/neck/tie/blue - l_hand = null - suit_store = null - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/storage/firstaid/medical=1, /obj/item/flashlight/pen=1) - -/datum/outfit/job/cmo/surgeongeneral - name = "Chief Medical Officer (Surgeon-General)" - - uniform = /obj/item/clothing/under/rank/medical/chief_medical_officer - alt_uniform = null - shoes = /obj/item/clothing/shoes/laceup - suit = /obj/item/clothing/suit/toggle/labcoat/cmo - alt_suit = null - l_hand = null - suit_store = null - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/storage/firstaid/medical=1, /obj/item/flashlight/pen=1) - - -/datum/outfit/job/cmo/pharma - name = "Chief Pharmacist" - - glasses = /obj/item/clothing/glasses/science/prescription/fake//chief pharma is this kind of person - neck = /obj/item/clothing/neck/tie/orange//the Horrible Tie was genuinely too hard to look at - l_pocket = /obj/item/reagent_containers/glass/filter - ears = /obj/item/radio/headset/heads/cmo - uniform = /obj/item/clothing/under/suit/tan - alt_uniform = /obj/item/clothing/under/rank/medical/doctor/green - shoes = /obj/item/clothing/shoes/sneakers/brown - suit = /obj/item/clothing/suit/toggle/suspenders/gray - suit_store = null - dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical - l_hand = /obj/item/reagent_containers/glass/maunamug - backpack = /obj/item/storage/backpack/chemistry - satchel = /obj/item/storage/backpack/satchel/chem - courierbag = /obj/item/storage/backpack/messenger/chem - backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1, /obj/item/storage/bag/chemistry=1) diff --git a/code/modules/jobs/job_types/cook.dm b/code/modules/jobs/job_types/cook.dm index d1006a5b154f..1c3d318eeffb 100644 --- a/code/modules/jobs/job_types/cook.dm +++ b/code/modules/jobs/job_types/cook.dm @@ -35,23 +35,3 @@ H.equip_to_slot_or_del(I,ITEM_SLOT_BACKPACK) var/datum/martial_art/cqc/under_siege/justacook = new justacook.teach(H) - -//WS Edit Start - Alt-Job Titles -/datum/outfit/job/cook/grillmaster - uniform = /obj/item/clothing/under/rank/civilian/cookjorts - suit = null - head = null - mask = null - r_hand = /obj/item/reagent_containers/food/drinks/soda_cans/monkey_energy - l_pocket = /obj/item/stack/sheet/mineral/coal -//WS Edit End - Alt-Job Titles - -//shiptest outfits - -/datum/outfit/job/cook/frontiersmen - name = "Steward (frontiersmen)" - - uniform = /obj/item/clothing/under/rank/security/officer/frontier - ears = /obj/item/radio/headset/pirate - head = /obj/item/clothing/head/flatcap - suit = /obj/item/clothing/suit/apron/chef diff --git a/code/modules/jobs/job_types/curator.dm b/code/modules/jobs/job_types/curator.dm index d069e3411bbc..3fb642e9e469 100644 --- a/code/modules/jobs/job_types/curator.dm +++ b/code/modules/jobs/job_types/curator.dm @@ -36,38 +36,3 @@ return H.grant_all_languages(TRUE, TRUE, TRUE, LANGUAGE_CURATOR) - -/datum/outfit/job/curator/journalist - name = "Curator (Journalist)" - uniform = /obj/item/clothing/under/suit/checkered - head = /obj/item/clothing/head/fedora - neck = /obj/item/camera - l_hand = /obj/item/taperecorder - l_pocket = /obj/item/newspaper - backpack_contents = list( - /obj/item/choice_beacon/hero = 1, - /obj/item/tape = 1 - ) - -/datum/outfit/job/curator/librarian - name = "Curator (Librarian)" - uniform = /obj/item/clothing/under/suit/tan - neck = /obj/item/clothing/neck/tie/brown - backpack_contents = list( - /obj/item/choice_beacon/hero = 1, - /obj/item/tape = 1, - /obj/item/paper_bin/bundlenatural = 1, - /obj/item/pen/fountain = 1 - ) -/datum/outfit/job/curator/dungeonmaster - name = "Dungeon Master" - uniform = /obj/item/clothing/under/misc/pj/red - suit = /obj/item/clothing/suit/nerdshirt - backpack_contents = list( - /obj/item/choice_beacon/hero = 1, - /obj/item/tape = 1, - /obj/item/storage/pill_bottle/dice = 1, - /obj/item/toy/cards/deck/cas = 1, - /obj/item/toy/cards/deck/cas/black = 1, - /obj/item/hourglass = 1 - ) diff --git a/code/modules/jobs/job_types/head_of_personnel.dm b/code/modules/jobs/job_types/head_of_personnel.dm index 0e53b00c1670..a1071d7d3ce4 100644 --- a/code/modules/jobs/job_types/head_of_personnel.dm +++ b/code/modules/jobs/job_types/head_of_personnel.dm @@ -49,78 +49,3 @@ courierbag = /obj/item/storage/backpack/messenger/com chameleon_extras = list(/obj/item/gun/energy/e_gun, /obj/item/stamp/head_of_personnel) - -/datum/outfit/job/head_of_personnel/pre_equip(mob/living/carbon/human/H) - ..() - -/datum/outfit/job/head_of_personnel/nt - name = "First Officer (Nanotrasen)" - ears = /obj/item/radio/headset/nanotrasen - uniform = /obj/item/clothing/under/rank/command/head_of_personnel/nt - alt_uniform = null - alt_suit = null - shoes = /obj/item/clothing/shoes/laceup - head = /obj/item/clothing/head/hopcap/nt - -/datum/outfit/job/head_of_personnel/pirate - name = "First Mate (Pirate)" - ears = /obj/item/radio/headset/pirate - uniform = /obj/item/clothing/under/costume/pirate - shoes = /obj/item/clothing/shoes/jackboots - head = /obj/item/clothing/head/pirate - suit = /obj/item/clothing/suit/pirate - -/datum/outfit/job/head_of_personnel/western - name = "First Mate (Western)" - uniform = /obj/item/clothing/under/rank/security/detective/grey - alt_uniform = null - suit = null - alt_suit = null - shoes = /obj/item/clothing/shoes/cowboy/black - accessory = /obj/item/clothing/accessory/waistcoat - head = /obj/item/clothing/head/HoS/cowboy - -/datum/outfit/job/head_of_personnel/minutemen - name = "Bridge Officer (Colonial Minutemen)" - - ears = /obj/item/radio/headset/minutemen/alt - uniform = /obj/item/clothing/under/rank/command/minutemen - alt_uniform = null - suit = /obj/item/clothing/suit/toggle/lawyer/minutemen - alt_suit = null - - shoes = /obj/item/clothing/shoes/combat - head = /obj/item/clothing/head/cowboy/sec/minutemen - backpack = /obj/item/storage/backpack - backpack_contents = list(/obj/item/storage/box/ids=1,\ - /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) - -/datum/outfit/job/head_of_personnel/beluga - - uniform = /obj/item/clothing/under/rank/command/head_of_personnel - glasses = /obj/item/clothing/glasses/sunglasses/big - shoes = /obj/item/clothing/shoes/cowboy/fancy - head = /obj/item/clothing/head/beret/hop - backpack_contents = list(/obj/item/storage/box/ids=1,\ - /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) - -/datum/outfit/job/head_of_personnel/frontiersmen - name = "Bridge Officer (frontiersmen)" - - ears = /obj/item/radio/headset/pirate/alt - uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer - shoes = /obj/item/clothing/shoes/cowboy/black - head = /obj/item/clothing/head/beret/sec/frontier/officer - gloves = /obj/item/clothing/gloves/combat - r_pocket = /obj/item/kitchen/knife/combat/survival - glasses = /obj/item/clothing/glasses/sunglasses - suit = /obj/item/clothing/suit/armor/vest/bulletproof/frontier - -/datum/outfit/job/head_of_personnel/pilot/heron - name = "pilot" - - uniform = /obj/item/clothing/under/rank/security/officer/military - suit = /obj/item/clothing/suit/jacket/leather/duster - glasses = /obj/item/clothing/glasses/hud/spacecop - accessory = /obj/item/clothing/accessory/holster - head = /obj/item/clothing/head/beret/command diff --git a/code/modules/jobs/job_types/head_of_security.dm b/code/modules/jobs/job_types/head_of_security.dm index a122b4249b98..52bdd0b505c9 100644 --- a/code/modules/jobs/job_types/head_of_security.dm +++ b/code/modules/jobs/job_types/head_of_security.dm @@ -52,69 +52,3 @@ implants = list(/obj/item/implant/mindshield) chameleon_extras = list(/obj/item/gun/energy/e_gun/hos, /obj/item/stamp/hos) - -/datum/outfit/job/hos/hardsuit - name = "Head of Security (Hardsuit)" - - mask = /obj/item/clothing/mask/gas/sechailer - suit = /obj/item/clothing/suit/space/hardsuit/security/hos - suit_store = /obj/item/tank/internals/oxygen - backpack_contents = list(/obj/item/melee/baton/loaded=1, /obj/item/gun/energy/e_gun=1, /obj/item/ammo_box/magazine/co9mm=1) //WS edit - free lethals - -/datum/outfit/job/hos/nanotrasen - name = "Head of Security (Nanotrasen)" - - ears = /obj/item/radio/headset/nanotrasen/alt - uniform = /obj/item/clothing/under/rank/security/head_of_security/nt - alt_uniform = null - head = /obj/item/clothing/head/beret/sec/hos - -/datum/outfit/job/hos/frontiersmen - name = "Master At Arms (frontiersmen)" - - ears = /obj/item/radio/headset/syndicate/alt - uniform = /obj/item/clothing/under/rank/security/officer/frontier/officer - head = /obj/item/clothing/head/caphat/frontier - suit = /obj/item/clothing/suit/armor/vest/bulletproof/frontier - shoes = /obj/item/clothing/shoes/cowboy/black - gloves = /obj/item/clothing/gloves/combat - backpack_contents = list(/obj/item/melee/baton/loaded=1) - suit_store = null - -/datum/outfit/job/hos/roumain - jobtype = /datum/job/hos/roumain - name = "Hunter Montagne (Saint-Roumain Militia)" - ears = /obj/item/radio/headset/headset_com - uniform = /obj/item/clothing/under/suit/roumain - alt_uniform = null - shoes = /obj/item/clothing/shoes/workboots/mining - suit = /obj/item/clothing/suit/armor/hos/roumain/montagne - alt_suit = null - dcoat = null - head = /obj/item/clothing/head/HoS/cowboy/montagne - gloves = null - id = /obj/item/card/id/silver - belt = null - glasses = null - suit_store = null - r_pocket = null - l_pocket = null - duffelbag = /obj/item/storage/backpack/cultpack - courierbag = /obj/item/storage/backpack/cultpack - backpack = /obj/item/storage/backpack/cultpack - satchel = /obj/item/storage/backpack/cultpack - box = null - implants = null - chameleon_extras = null - backpack_contents = list( - /obj/item/book/manual/srmlore, - /obj/item/stamp/chap = 1, - /obj/item/melee/classic_baton/telescopic=1 - ) - -/datum/outfit/job/hos/roumain/post_equip(mob/living/carbon/human/H) - H.faction |= list("roumain") - -/datum/job/hos/roumain - outfit = /datum/outfit/job/hos/roumain - mind_traits = null diff --git a/code/modules/jobs/job_types/janitor.dm b/code/modules/jobs/job_types/janitor.dm index 6f673a06195d..8293c2bd663b 100644 --- a/code/modules/jobs/job_types/janitor.dm +++ b/code/modules/jobs/job_types/janitor.dm @@ -24,7 +24,3 @@ if(GARBAGEDAY in SSevents.holidays) l_pocket = /obj/item/gun/ballistic/revolver r_pocket = /obj/item/ammo_box/a357 - -/datum/outfit/job/janitor/maid - name = "Maid" - uniform = /obj/item/clothing/under/rank/civilian/janitor/maid diff --git a/code/modules/jobs/job_types/lawyer.dm b/code/modules/jobs/job_types/lawyer.dm index d0777a8af2f8..b43c00caed3e 100644 --- a/code/modules/jobs/job_types/lawyer.dm +++ b/code/modules/jobs/job_types/lawyer.dm @@ -27,21 +27,3 @@ r_pocket = /obj/item/clothing/accessory/lawyers_badge chameleon_extras = /obj/item/stamp/law - -/datum/outfit/job/lawyer/corporaterepresentative - uniform = /obj/item/clothing/under/suit/navy - suit = /obj/item/clothing/suit/toggle/lawyer/navy - ears = /obj/item/radio/headset/headset_cent - neck = /obj/item/clothing/neck/tie/blue - l_hand = /obj/item/clipboard - r_pocket = /obj/item/pen/fountain - -/datum/outfit/job/lawyer/passenger - uniform = /obj/item/clothing/under/suit/black - suit = null - ears = /obj/item/radio/headset/headset_cent - neck = null - glasses = /obj/item/clothing/glasses/sunglasses/big - l_hand = null - r_pocket = /obj/item/spacecash/bundle/mediumrand - diff --git a/code/modules/jobs/job_types/medical_doctor.dm b/code/modules/jobs/job_types/medical_doctor.dm index f46b1f243582..f1eb3c028696 100644 --- a/code/modules/jobs/job_types/medical_doctor.dm +++ b/code/modules/jobs/job_types/medical_doctor.dm @@ -32,125 +32,3 @@ box = /obj/item/storage/box/survival/medical chameleon_extras = /obj/item/gun/syringe - -/datum/outfit/job/doctor/surgeon - name = "Medical Doctor (Surgeon)" - - uniform = /obj/item/clothing/under/rank/medical/doctor/blue - suit = /obj/item/clothing/suit/apron/surgical - mask = /obj/item/clothing/mask/surgical - suit_store = null - -/datum/outfit/job/doctor/nurse - name = "Medical Doctor (Nurse)" - - head = /obj/item/clothing/head/nursehat - suit = null - suit_store = null - alt_uniform = /obj/item/clothing/under/rank/medical/doctor/nurse - accessory = /obj/item/clothing/accessory/armband/medblue - -/datum/outfit/job/doctor/juniordoctor - name = "Medical Doctor (Junior Doctor)" - - alt_uniform = null - shoes = /obj/item/clothing/shoes/sneakers/blue - suit = null - alt_suit = null - l_hand = null - suit_store = null - - backpack_contents = list(/obj/item/storage/firstaid/medical=1, /obj/item/flashlight/pen=1) - -/datum/outfit/job/doctor/seniordoctor - name = "Medical Doctor (Senior Doctor)" - - uniform = /obj/item/clothing/under/rank/medical/doctor - alt_uniform = null - shoes = /obj/item/clothing/shoes/laceup - suit = /obj/item/clothing/suit/toggle/lawyer/medical - alt_suit = /obj/item/clothing/suit/toggle/labcoat - dcoat = null - l_hand = null - suit_store = null - neck = /obj/item/clothing/neck/tie/blue - - backpack_contents = list(/obj/item/storage/firstaid/medical=1, /obj/item/flashlight/pen=1) - -/datum/outfit/job/doctor/psychiatrist - name = "Medical Doctor (Psychiatrist)" - - uniform = /obj/item/clothing/under/rank/medical/psychiatrist - shoes = /obj/item/clothing/shoes/laceup - suit = null - alt_suit = null - l_hand = null - suit_store = null - - backpack_contents = list(/obj/item/clipboard=1, /obj/item/folder/white=1, /obj/item/taperecorder=1) - -//Shiptest outfits - -/datum/outfit/job/doctor/minutemen - name = "Field Medic (Colonial Minutemen)" - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - accessory = /obj/item/clothing/accessory/armband/medblue - shoes = /obj/item/clothing/shoes/sneakers/white - head = /obj/item/clothing/head/beret/med - suit = null - suit_store = null - -/datum/outfit/job/doctor/pirate - name = "Ship's Doctor (Pirate)" - - uniform = /obj/item/clothing/under/costume/sailor - shoes = /obj/item/clothing/shoes/jackboots - - -/datum/outfit/job/doctor/roumain - name = "Hunter Doctor (Saint-Roumain Militia)" - - uniform = /obj/item/clothing/under/suit/roumain - alt_uniform = null - shoes = /obj/item/clothing/shoes/workboots/mining - suit = /obj/item/clothing/suit/toggle/labcoat/roumain_med - - head = /obj/item/clothing/head/cowboy/sec/roumain/med - mask = /obj/item/clothing/mask/gas/plaguedoctor - gloves = null - backpack = /obj/item/storage/backpack - satchel = /obj/item/storage/backpack/satchel - duffelbag = /obj/item/storage/backpack/duffelbag - courierbag = /obj/item/storage/backpack/messenger - backpack_contents = list(/obj/item/storage/firstaid/roumain=1) - -/datum/outfit/job/doctor/roumain/post_equip(mob/living/carbon/human/H) - H.faction |= list("roumain") - -/datum/outfit/job/doctor/frontiersmen - name = "Surgeon (frontiersmen)" - - uniform = /obj/item/clothing/under/rank/security/officer/frontier - glasses = /obj/item/clothing/glasses/hud/health/prescription - ears = /obj/item/radio/headset/pirate - r_pocket = /obj/item/kitchen/knife/combat/survival - backpack_contents = list(/obj/item/storage/firstaid/medical,) - -/datum/outfit/job/doctor/lp - name = "LP Medical specialist" - - implants = list(/obj/item/implant/mindshield) - ears = /obj/item/radio/headset/nanotrasen/alt/captain - id = /obj/item/card/id/lpmed - belt = /obj/item/pda/medical - gloves = /obj/item/clothing/gloves/color/latex/nitrile - uniform = /obj/item/clothing/under/rank/medical/paramedic/lp - alt_uniform = /obj/item/clothing/under/rank/medical/paramedic/skirt/lp - dcoat = /obj/item/clothing/suit/hooded/wintercoat/medical - shoes = /obj/item/clothing/shoes/sneakers/white - head = /obj/item/clothing/head/beret/med - - satchel = /obj/item/storage/backpack/satchel/med - duffelbag = /obj/item/storage/backpack/duffelbag/med - courierbag = /obj/item/storage/backpack/messenger/med - box = /obj/item/storage/box/survival/medical diff --git a/code/modules/jobs/job_types/paramedic.dm b/code/modules/jobs/job_types/paramedic.dm index 1b989c847ba6..35d353ac6b52 100644 --- a/code/modules/jobs/job_types/paramedic.dm +++ b/code/modules/jobs/job_types/paramedic.dm @@ -37,27 +37,3 @@ box = /obj/item/storage/box/survival/medical chameleon_extras = /obj/item/gun/syringe - -/datum/outfit/job/paramedic/emt - name = "Paramedic (Emergency Medical Technician)" - - uniform = /obj/item/clothing/under/rank/medical/paramedic/emt - -//Shiptest outfits - -/datum/outfit/job/paramedic/inteq - name = "IRMG Corpsman (Inteq)" - - uniform = /obj/item/clothing/under/syndicate/inteq/corpsman - head = /obj/item/clothing/head/soft/inteq/corpsman - suit = /obj/item/clothing/suit/armor/inteq/corpsman - shoes = /obj/item/clothing/shoes/combat - belt = /obj/item/storage/belt/medical/webbing/paramedic - ears = /obj/item/radio/headset/headset_medsec/alt - -/datum/outfit/job/paramedic/minutemen - name = "BARD Combat Medic (Minutemen)" - - uniform = /obj/item/clothing/under/rank/medical/paramedic/emt - head = /obj/item/clothing/head/soft/paramedic - suit = /obj/item/clothing/suit/armor/ diff --git a/code/modules/jobs/job_types/prisoner.dm b/code/modules/jobs/job_types/prisoner.dm index aca27ae4acbf..4d2d6927d9df 100644 --- a/code/modules/jobs/job_types/prisoner.dm +++ b/code/modules/jobs/job_types/prisoner.dm @@ -16,16 +16,3 @@ id = /obj/item/card/id/prisoner ears = null belt = null - -/datum/outfit/job/prisoner/protectedcustody - name = "Prisoner (Protected Custody)" - - uniform = /obj/item/clothing/under/rank/prisoner/protected_custody - alt_uniform = /obj/item/clothing/under/rank/prisoner/protected_custody - alt_suit = null - shoes = /obj/item/clothing/shoes/sneakers/orange - -/datum/outfit/job/prisoner/shotcaller - name = "Shotcaller" - l_pocket = /obj/item/kitchen/knife/shiv - diff --git a/code/modules/jobs/job_types/quartermaster.dm b/code/modules/jobs/job_types/quartermaster.dm index 68380b99fa05..48b810cff6d7 100644 --- a/code/modules/jobs/job_types/quartermaster.dm +++ b/code/modules/jobs/job_types/quartermaster.dm @@ -27,21 +27,3 @@ backpack_contents = list(/obj/item/modular_computer/tablet/preset/cargo=1) chameleon_extras = /obj/item/stamp/qm - -/datum/outfit/job/quartermaster/western - name = "Foreman (Western)" - uniform = /obj/item/clothing/under/rank/cargo/qm - suit = /obj/item/clothing/suit/toggle/hazard - shoes = /obj/item/clothing/shoes/workboots - glasses = /obj/item/clothing/glasses/sunglasses - head = /obj/item/clothing/head/cowboy/sec - -/datum/outfit/job/quartermaster/requisitionsofficer - name = "Requisitions Officer" - suit = /obj/item/clothing/suit/jacket/miljacket - head = /obj/item/clothing/head/soft/black - -/datum/outfit/job/quartermaster/chiefeconomist - name = "Chief Economist" - uniform = /obj/item/clothing/under/suit/tan - neck = /obj/item/clothing/neck/tie/brown diff --git a/code/modules/jobs/job_types/research_director.dm b/code/modules/jobs/job_types/research_director.dm index 7a91f58996a4..dbe1f02e0198 100644 --- a/code/modules/jobs/job_types/research_director.dm +++ b/code/modules/jobs/job_types/research_director.dm @@ -45,12 +45,3 @@ courierbag = /obj/item/storage/backpack/messenger/tox chameleon_extras = /obj/item/stamp/rd - -/datum/outfit/job/rd/rig - name = "Research Director (Hardsuit)" - - l_hand = null - mask = /obj/item/clothing/mask/breath - suit = /obj/item/clothing/suit/space/hardsuit/rd - suit_store = /obj/item/tank/internals/oxygen - internals_slot = ITEM_SLOT_SUITSTORE diff --git a/code/modules/jobs/job_types/roboticist.dm b/code/modules/jobs/job_types/roboticist.dm index d842f57edf37..928b1dfc1a5e 100644 --- a/code/modules/jobs/job_types/roboticist.dm +++ b/code/modules/jobs/job_types/roboticist.dm @@ -28,21 +28,3 @@ pda_slot = ITEM_SLOT_LPOCKET -/datum/outfit/job/roboticist/technician/minutemen - name = "Mech Technician (Minutemen)" - - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - shoes = /obj/item/clothing/shoes/combat - ears = /obj/item/radio/headset/minutemen - suit = /obj/item/clothing/suit/toggle/labcoat/science - -/datum/outfit/job/roboticist/heron - name = "Mech Technician (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/rnd/roboticist - suit = /obj/item/clothing/suit/longcoat/robowhite - ears = /obj/item/radio/headset/nanotrasen - glasses = /obj/item/clothing/glasses/welding - - backpack_contents = list(/obj/item/weldingtool/hugetank) - diff --git a/code/modules/jobs/job_types/scientist.dm b/code/modules/jobs/job_types/scientist.dm index 78f0407d2604..47ba27ce24b8 100644 --- a/code/modules/jobs/job_types/scientist.dm +++ b/code/modules/jobs/job_types/scientist.dm @@ -31,9 +31,3 @@ ..() if(prob(0.4)) neck = /obj/item/clothing/neck/tie/horrible - -/datum/outfit/job/scientist/minutemen - name = "Scientist (Minutemen)" - - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - backpack = /obj/item/storage/backpack/security/cmm diff --git a/code/modules/jobs/job_types/security_officer.dm b/code/modules/jobs/job_types/security_officer.dm index 16a42b26211c..4dbe20d2465b 100644 --- a/code/modules/jobs/job_types/security_officer.dm +++ b/code/modules/jobs/job_types/security_officer.dm @@ -99,242 +99,3 @@ GLOBAL_LIST_INIT(available_depts, list(SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, S chameleon_extras = list(/obj/item/gun/energy/disabler, /obj/item/clothing/glasses/hud/security/sunglasses, /obj/item/clothing/head/helmet) //The helmet is necessary because /obj/item/clothing/head/helmet/sec is overwritten in the chameleon list by the standard helmet, which has the same name and icon state - -/datum/outfit/job/security/pirate - name = "Buccaneer (Pirate)" - - uniform = /obj/item/clothing/under/syndicate/camo - shoes = /obj/item/clothing/shoes/jackboots - head = /obj/item/clothing/head/bandana - suit = /obj/item/clothing/suit/armor/vest - -/datum/outfit/job/security/corporate - name = "Corporate Security" - - uniform = /obj/item/clothing/under/syndicate/combat - shoes = /obj/item/clothing/shoes/jackboots - glasses = /obj/item/clothing/glasses/hud/security/sunglasses - head = /obj/item/clothing/head/beret/sec/officer - suit = /obj/item/clothing/suit/armor/vest/security/officer - -/datum/outfit/job/security/western - name = "Security Detail (Western)" - - uniform = /obj/item/clothing/under/rank/security/officer/blueshirt - alt_uniform = null - shoes = /obj/item/clothing/shoes/jackboots - glasses = /obj/item/clothing/glasses/hud/security/sunglasses - head = /obj/item/clothing/head/cowboy/sec - -/datum/outfit/job/security/minutemen - name = "Minuteman (Colonial Minutemen)" - - head = /obj/item/clothing/head/helmet/bulletproof/minutemen - mask = /obj/item/clothing/mask/gas/sechailer/minutemen - suit = /obj/item/clothing/suit/armor/vest/bulletproof - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - - belt = /obj/item/storage/belt/military/minutemen - - l_pocket = /obj/item/flashlight/seclite - r_pocket = /obj/item/tank/internals/emergency_oxygen/double - - backpack = /obj/item/storage/backpack/security/cmm - box = /obj/item/storage/box/survival/engineer/radio - backpack_contents = null - -/datum/outfit/job/security/minutemen/naked - name = "Minuteman (Colonial Minutemen) (Naked)" - - head = null - suit = null - mask = null - shoes = null - gloves = null - ears = null - - belt = null - - l_pocket = null - r_pocket = null - -/datum/outfit/job/security/minutemen/armed - name = "Minuteman (Colonial Minutemen) (Armed)" - - suit_store = /obj/item/gun/ballistic/automatic/assault/p16/minutemen - belt = /obj/item/storage/belt/military/minutemen/p16 - -/datum/outfit/job/security/minutemen/mechpilot - name = "Mech Pilot (Colonial Minutemen)" - - suit = /obj/item/clothing/suit/armor/vest/alt - gloves = /obj/item/clothing/gloves/tackler/combat/insulated - glasses = /obj/item/clothing/glasses/hud/diagnostic - - backpack_contents = list(/obj/item/melee/classic_baton=1, /obj/item/restraints/handcuffs=1) - -/datum/outfit/job/security/inteq - name = "IRMG Enforcer (Inteq)" - - head = /obj/item/clothing/head/helmet/inteq - suit = /obj/item/clothing/suit/armor/vest/alt - belt = /obj/item/storage/belt/security/webbing/inteq - mask = /obj/item/clothing/mask/gas/sechailer/inteq - uniform = /obj/item/clothing/under/syndicate/inteq - dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq - shoes = /obj/item/clothing/shoes/combat - glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq - gloves = /obj/item/clothing/gloves/combat - - backpack = /obj/item/storage/backpack/messenger/inteq - satchel = /obj/item/storage/backpack/messenger/inteq - courierbag = /obj/item/storage/backpack/messenger/inteq - backpack_contents = list(/obj/item/pda/security) - -/datum/outfit/job/security/inteq/beluga - name = "IRMG Enforcer (Beluga)" - - head = /obj/item/clothing/head/beret/sec/inteq - suit = null - belt = null - mask = null - uniform = /obj/item/clothing/under/syndicate/inteq - dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq - shoes = /obj/item/clothing/shoes/sneakers/black - glasses = null - gloves = /obj/item/clothing/gloves/color/evening - - backpack = /obj/item/storage/backpack/messenger/inteq - satchel = /obj/item/storage/backpack/messenger/inteq - courierbag = /obj/item/storage/backpack/messenger/inteq - backpack_contents = list(/obj/item/pda/security) - -/datum/outfit/job/security/inteq/naked - name = "IRMG Enforcer (Inteq) (Naked)" - head = null - suit = null - belt = null - mask = null - gloves = null - -/datum/outfit/job/security/nanotrasen - name = "Security Officer (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/security/officer/nt - alt_uniform = null - backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) - -/datum/outfit/job/security/nanotrasen/ert - name = "ERT Officer (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/security/officer/camo - head = null - backpack = /obj/item/storage/backpack/ert/security - belt = /obj/item/storage/belt/military - id = /obj/item/card/id/ert/security - r_pocket = /obj/item/kitchen/knife/combat/survival - backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) - -/datum/outfit/job/security/nanotrasen/ert/engi - name = "ERT Engineering Officer (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/security/officer/camo - head = null - backpack = /obj/item/storage/backpack/ert/engineer - belt = /obj/item/storage/belt/utility/full/ert - id = /obj/item/card/id/ert/security - r_pocket = /obj/item/kitchen/knife/combat/survival - backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) - accessory = /obj/item/clothing/accessory/armband/engine - glasses = /obj/item/clothing/glasses/hud/diagnostic/sunglasses - -/datum/outfit/job/security/nanotrasen/ert/med - name = "ERT Medical Officer (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/security/officer/camo - head = /obj/item/clothing/head/beret/med - backpack = /obj/item/storage/backpack/ert/medical - belt = /obj/item/storage/belt/medical/webbing/paramedic - id = /obj/item/card/id/ert/security - r_pocket = /obj/item/kitchen/knife/combat/survival - backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) - accessory = /obj/item/clothing/accessory/armband/med - glasses = /obj/item/clothing/glasses/hud/health/night - -/datum/outfit/job/security/nanotrasen/mech_pilot - name = "Mech Pilot (Nanotrasen)" - - uniform = /obj/item/clothing/under/rank/security/officer/military/eng - head = /obj/item/clothing/head/beret/sec/officer - suit = /obj/item/clothing/suit/armor/vest/bulletproof - backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) - -/datum/outfit/job/security/roumain - name = "Hunter (Saint-Roumain Militia)" - - uniform = /obj/item/clothing/under/suit/roumain - alt_uniform = null - shoes = /obj/item/clothing/shoes/workboots/mining - suit = /obj/item/clothing/suit/armor/roumain - - head = /obj/item/clothing/head/cowboy/sec/roumain - gloves = null - backpack = /obj/item/storage/backpack - satchel = /obj/item/storage/backpack/satchel - duffelbag = /obj/item/storage/backpack/duffelbag - courierbag = /obj/item/storage/backpack/messenger - backpack_contents = null - -/datum/outfit/job/security/roumain/post_equip(mob/living/carbon/human/H) - H.faction |= list("roumain") - -/datum/outfit/job/security/aipirate - name = "Nodesman (Security)" - - uniform = /obj/item/clothing/under/utility - head = /obj/item/clothing/head/soft/black - shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat - - backpack_contents = list(/obj/item/melee/baton/loaded=1) - - implants = list(/obj/item/implant/radio) - - -/datum/outfit/job/security/Frontiersmen - name = "Buccaneer (Frontiersmen)" - - head = /obj/item/clothing/head/beret/sec/frontier - mask = /obj/item/clothing/mask/gas/sechailer/minutemen - suit = null - uniform = /obj/item/clothing/under/rank/security/officer/frontier - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - ears = /obj/item/radio/headset/pirate/alt - - belt = /obj/item/storage/belt/security/webbing - - l_pocket = /obj/item/flashlight/seclite - r_pocket = /obj/item/tank/internals/emergency_oxygen/double - -/datum/outfit/job/security/lp - name = "LP Security Specialist" - - implants = list(/obj/item/implant/mindshield) - ears = /obj/item/radio/headset/nanotrasen/alt/captain - id = /obj/item/card/id/lpsec - belt = /obj/item/pda/security - gloves = /obj/item/clothing/gloves/color/black - uniform = /obj/item/clothing/under/rank/security/head_of_security/nt/skirt/lp - alt_uniform = /obj/item/clothing/under/rank/security/head_of_security/nt/lp - dcoat = /obj/item/clothing/suit/hooded/wintercoat/security - shoes = /obj/item/clothing/shoes/jackboots - head = /obj/item/clothing/head/beret/sec - - satchel = /obj/item/storage/backpack/satchel/sec - duffelbag = /obj/item/storage/backpack/duffelbag/sec - courierbag = /obj/item/storage/backpack/messenger/sec - -//Shiptest outfits end diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm index cc5ec142932e..2cf67b9bbf70 100644 --- a/code/modules/jobs/job_types/shaft_miner.dm +++ b/code/modules/jobs/job_types/shaft_miner.dm @@ -36,103 +36,3 @@ box = /obj/item/storage/box/survival/mining chameleon_extras = /obj/item/gun/energy/kinetic_accelerator - -/datum/outfit/job/miner/classic - uniform = /obj/item/clothing/under/rank/cargo/miner - gloves = /obj/item/clothing/gloves/color/black - shoes = /obj/item/clothing/shoes/workboots - -/datum/outfit/job/miner/equipped - name = "Shaft Miner (Equipment)" - suit = /obj/item/clothing/suit/hooded/explorer - mask = /obj/item/clothing/mask/gas/explorer - glasses = /obj/item/clothing/glasses/meson - suit_store = /obj/item/tank/internals/oxygen - internals_slot = ITEM_SLOT_SUITSTORE - backpack_contents = list( - /obj/item/flashlight/seclite=1,\ - /obj/item/kitchen/knife/combat/survival=1, - /obj/item/mining_scanner=1, - /obj/item/stack/marker_beacon/ten=1) - belt = /obj/item/gun/energy/kinetic_accelerator - -/datum/outfit/job/miner/equipped/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - ..() - if(visualsOnly) - return - if(istype(H.wear_suit, /obj/item/clothing/suit/hooded)) - var/obj/item/clothing/suit/hooded/S = H.wear_suit - S.ToggleHood() - -/datum/outfit/job/miner/equipped/hardsuit - name = "Shaft Miner (Equipment + Hardsuit)" - suit = /obj/item/clothing/suit/space/hardsuit/mining - mask = /obj/item/clothing/mask/breath - -//Shiptest Outfits - -/datum/outfit/job/miner/hazard - name = "Asteroid Miner (Hazard)" - uniform = /obj/item/clothing/under/rank/cargo/miner/hazard - alt_uniform = null - alt_suit = /obj/item/clothing/suit/toggle/hazard - -/datum/outfit/job/miner/scientist - name = "Minerologist" - - belt = /obj/item/pda/toxins - uniform = /obj/item/clothing/under/rank/cargo/miner/hazard - alt_uniform = /obj/item/clothing/under/rank/rnd/roboticist - suit = /obj/item/clothing/suit/toggle/labcoat/science - alt_suit = /obj/item/clothing/suit/toggle/hazard - dcoat = /obj/item/clothing/suit/hooded/wintercoat/science - - backpack = /obj/item/storage/backpack/science - satchel = /obj/item/storage/backpack/satchel/tox - courierbag = /obj/item/storage/backpack/messenger/tox - -/datum/outfit/job/miner/old - name = "Shaft Miner (Legacy)" - suit = /obj/item/clothing/suit/hooded/explorer/old - mask = /obj/item/clothing/mask/gas/explorer/old - glasses = /obj/item/clothing/glasses/meson - suit_store = /obj/item/tank/internals/oxygen - gloves = /obj/item/clothing/gloves/explorer/old - uniform = /obj/item/clothing/under/rank/cargo/miner/lavaland/old - internals_slot = ITEM_SLOT_SUITSTORE - backpack_contents = list( - /obj/item/flashlight/seclite=1,\ - /obj/item/kitchen/knife/combat/survival=1, - /obj/item/mining_scanner=1, - /obj/item/reagent_containers/hypospray/medipen/survival, - /obj/item/reagent_containers/hypospray/medipen/survival,\ - /obj/item/stack/marker_beacon/ten=1) - belt = /obj/item/gun/energy/kinetic_accelerator/old - -/datum/outfit/job/miner/righand - name = "Righand" - backpack_contents = list( - /obj/item/flashlight/seclite=1, - /obj/item/kitchen/knife/combat/survival=1, - /obj/item/mining_scanner=1, - /obj/item/wrench=1 - ) - -/datum/outfit/job/miner/seniorminer - backpack_contents = list( - /obj/item/flashlight/seclite=1, - /obj/item/kitchen/knife/combat/survival=1, - /obj/item/stack/marker_beacon/ten=1, - /obj/item/borg/upgrade/modkit/aoe=1 - ) - -/datum/outfit/job/miner/hazard/minutemen - name = "Industrial Miner (Minutemen)" - gloves = /obj/item/clothing/gloves/color/black - shoes = /obj/item/clothing/shoes/combat - backpack_contents = list( - /obj/item/flashlight/seclite=1, - /obj/item/stack/marker_beacon/ten=1, - /obj/item/weldingtool=1 - ) - diff --git a/code/modules/jobs/job_types/station_engineer.dm b/code/modules/jobs/job_types/station_engineer.dm index a347965d9323..767684db2ec2 100644 --- a/code/modules/jobs/job_types/station_engineer.dm +++ b/code/modules/jobs/job_types/station_engineer.dm @@ -12,7 +12,7 @@ display_order = JOB_DISPLAY_ORDER_STATION_ENGINEER /datum/outfit/job/engineer - name = "Mechanic" + name = "Engineer" job_icon = "stationengineer" jobtype = /datum/job/engineer @@ -34,116 +34,3 @@ box = /obj/item/storage/box/survival/engineer pda_slot = ITEM_SLOT_LPOCKET backpack_contents = list(/obj/item/modular_computer/tablet/preset/advanced=1) - -/datum/outfit/job/engineer/gloved - name = "Mechanic (Gloves)" - gloves = /obj/item/clothing/gloves/color/yellow - -/datum/outfit/job/engineer/gloved/rig - name = "Mechanic (Space suit)" - mask = /obj/item/clothing/mask/breath - suit = /obj/item/clothing/suit/space/engineer - head = /obj/item/clothing/head/helmet/space/light/engineer - suit_store = /obj/item/tank/internals/oxygen - head = null - internals_slot = ITEM_SLOT_SUITSTORE - -/datum/outfit/job/engineer/nt - name = "Engineer (Nanotrasen)" - uniform = /obj/item/clothing/under/rank/engineering/engineer/nt - head = /obj/item/clothing/head/hardhat - -/datum/outfit/job/engineer/minutemen - name = "Mechanic (Colonial Minutemen)" - - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - accessory = /obj/item/clothing/accessory/armband/engine - head = /obj/item/clothing/head/hardhat/dblue - suit = /obj/item/clothing/suit/hazardvest - -/datum/outfit/job/engineer/inteq - name = "IRMG Artificer (Inteq)" - - uniform = /obj/item/clothing/under/syndicate/inteq/artificer - head = /obj/item/clothing/head/soft/inteq - shoes = /obj/item/clothing/shoes/combat - -/datum/outfit/job/engineer/pirate - name = "Ship's Engineer (Pirate)" - - uniform = /obj/item/clothing/under/costume/sailor - head = /obj/item/clothing/head/bandana - shoes = /obj/item/clothing/shoes/jackboots - -/datum/outfit/job/engineer/hazard - name = "Ship's Engineer (Hazard)" - - uniform = /obj/item/clothing/under/rank/engineering/engineer/hazard - alt_uniform = null - head = /obj/item/clothing/head/hardhat - suit = /obj/item/clothing/suit/toggle/hazard - alt_suit = /obj/item/clothing/suit/hazardvest - -/datum/outfit/job/engineer/independent/ship_engineer - name = "Ship Engineer (Independent)" - - belt = /obj/item/storage/belt/utility/full/engi - uniform = /obj/item/clothing/under/rank/security/officer/military/eng - suit = /obj/item/clothing/suit/toggle/hazard - shoes = /obj/item/clothing/shoes/workboots - - head = null - backpack = /obj/item/storage/backpack - satchel = /obj/item/storage/backpack/satchel - duffelbag = /obj/item/storage/backpack/duffelbag - courierbag = /obj/item/storage/backpack/messenger - l_pocket = /obj/item/radio - r_pocket = /obj/item/analyzer - glasses = /obj/item/clothing/glasses/welding - -/datum/outfit/job/engineer/independent/ship_engineer/salvage - belt = null - r_pocket = null - glasses = null - -/datum/outfit/job/engineer/aipirate - name = "Nodesman (Engineer)" - - uniform = /obj/item/clothing/under/utility - head = /obj/item/clothing/head/soft/black - shoes = /obj/item/clothing/shoes/combat - r_pocket = /obj/item/kitchen/knife/combat/survival - gloves = /obj/item/clothing/gloves/combat - - implants = list(/obj/item/implant/radio) - -/datum/outfit/job/engineer/independent/frontiersmen - name = "Carpenter (frontiersmen)" - - belt = /obj/item/storage/belt/utility/full/engi - uniform = /obj/item/clothing/under/rank/security/officer/frontier - suit = /obj/item/clothing/suit/toggle/industrial - shoes = /obj/item/clothing/shoes/workboots - glasses = /obj/item/clothing/glasses/welding - head = /obj/item/clothing/head/helmet/space/pirate/bandana - - l_pocket = /obj/item/radio - r_pocket = /obj/item/analyzer - -/datum/outfit/job/engineer/lp - name = "LP Engineering Specialist" - - implants = list(/obj/item/implant/mindshield) - ears = /obj/item/radio/headset/nanotrasen/alt/captain - id = /obj/item/card/id/lpengie - belt = /obj/item/pda/engineering - gloves = /obj/item/clothing/gloves/color/yellow - uniform = /obj/item/clothing/under/rank/engineering/engineer/nt/lp - alt_uniform = /obj/item/clothing/under/rank/engineering/engineer/nt/skirt/lp - dcoat = /obj/item/clothing/suit/hooded/wintercoat/engineering - shoes = /obj/item/clothing/shoes/jackboots - head = /obj/item/clothing/head/beret/eng - - satchel = /obj/item/storage/backpack/satchel/eng - duffelbag = /obj/item/storage/backpack/duffelbag/engineering - courierbag = /obj/item/storage/backpack/messenger/engi diff --git a/code/modules/jobs/job_types/virologist.dm b/code/modules/jobs/job_types/virologist.dm index ac0a3986634d..2a3bd87d5ba2 100644 --- a/code/modules/jobs/job_types/virologist.dm +++ b/code/modules/jobs/job_types/virologist.dm @@ -30,10 +30,3 @@ duffelbag = /obj/item/storage/backpack/duffelbag/med courierbag = /obj/item/storage/backpack/messenger/viro box = /obj/item/storage/box/survival/medical - -/datum/outfit/job/virologist/pathologist - name = "Virologist (Pathologist)" - - alt_uniform = null - shoes = /obj/item/clothing/shoes/laceup - neck = /obj/item/clothing/neck/tie/green diff --git a/code/modules/jobs/job_types/warden.dm b/code/modules/jobs/job_types/warden.dm index 7be829dbe619..4feaed96faf1 100644 --- a/code/modules/jobs/job_types/warden.dm +++ b/code/modules/jobs/job_types/warden.dm @@ -48,64 +48,3 @@ implants = list(/obj/item/implant/mindshield) chameleon_extras = /obj/item/gun/ballistic/shotgun/automatic/combat/compact - -/datum/outfit/job/warden/chiefmastersergeant - name = "Chief Master Sergeant" - r_pocket = /obj/item/gun/ballistic/automatic/pistol/solgov - l_pocket = /obj/item/ammo_box/magazine/pistol556mm - chameleon_extras = null - -/datum/outfit/job/warden/minutemen - name = "Field Commander (Colonial Minutemen)" - - glasses = /obj/item/clothing/glasses/sunglasses - ears = /obj/item/radio/headset/minutemen/alt - uniform = /obj/item/clothing/under/rank/security/officer/minutemen - accessory = /obj/item/clothing/accessory/armband - head = /obj/item/clothing/head/cowboy/sec/minutemen - suit = /obj/item/clothing/suit/armor/vest/bulletproof - belt = /obj/item/storage/belt/military/minutemen - shoes = /obj/item/clothing/shoes/combat - - l_pocket = /obj/item/flashlight/seclite - r_pocket = /obj/item/tank/internals/emergency_oxygen/double - - box = /obj/item/storage/box/survival/engineer/radio - backpack = /obj/item/storage/backpack - backpack_contents = null - -/datum/outfit/job/warden/minutemen/armed - name = "Field Commander (Colonial Minutemen) (Armed)" - - suit_store = /obj/item/gun/ballistic/automatic/assault/p16/minutemen - belt = /obj/item/storage/belt/military/minutemen/p16 - - backpack_contents = list(/obj/item/melee/classic_baton=1, /obj/item/gun/ballistic/automatic/pistol/commander=1, /obj/item/restraints/handcuffs=1, /obj/item/gun/energy/e_gun/advtaser=1) - -/datum/outfit/job/warden/inteq - name = "Master At Arms (Inteq)" - - ears = /obj/item/radio/headset/inteq/alt - uniform = /obj/item/clothing/under/syndicate/inteq - head = /obj/item/clothing/head/beret/sec/hos/inteq - glasses = /obj/item/clothing/glasses/hud/security/sunglasses/inteq - mask = /obj/item/clothing/mask/gas/sechailer/inteq - belt = /obj/item/storage/belt/military/assault - suit = /obj/item/clothing/suit/armor/vest/alt - dcoat = /obj/item/clothing/suit/hooded/wintercoat/security/inteq - shoes = /obj/item/clothing/shoes/combat - gloves = /obj/item/clothing/gloves/combat - suit_store = null - - courierbag = /obj/item/storage/backpack/messenger/inteq - backpack_contents = list(/obj/item/melee/classic_baton=1, /obj/item/pda/warden) - -/datum/outfit/job/warden/nanotrasen - name = "Warden (Nanotrasen)" - - ears = /obj/item/radio/headset/nanotrasen/alt - head = /obj/item/clothing/head/warden/red - uniform = /obj/item/clothing/under/rank/security/warden/nt - suit = /obj/item/clothing/suit/armor/vest/security/warden/alt/nt - alt_uniform = null - alt_suit = null diff --git a/code/modules/mapping/map_template.dm b/code/modules/mapping/map_template.dm index b3f5b1078b20..fe66d3a99836 100644 --- a/code/modules/mapping/map_template.dm +++ b/code/modules/mapping/map_template.dm @@ -7,7 +7,11 @@ var/datum/parsed_map/cached_map var/keep_cached_map = FALSE - ///if true, turfs loaded from this template are placed on top of the turfs already there, defaults to TRUE + /// Defaults to TRUE. + /// If TRUE, the baseturfs of the new turfs (ignoring baseturf_bottom and space) are added + /// to the top of the pre-existing baseturf lists, in accordance with the behavior of PlaceOnTop. + /// If FALSE, the old turfs are replaced entirely, including their baseturfs. + /// Note that FALSE-case behavior is altered from the original implementation, which ignored baseturfs entirely; it was intended for holodecks, which have been removed. var/should_place_on_top = TRUE ///if true, creates a list of all atoms created by this template loading, defaults to FALSE diff --git a/code/modules/mapping/reader.dm b/code/modules/mapping/reader.dm index 9e12fb7d4ce7..3a8e2706d6b6 100644 --- a/code/modules/mapping/reader.dm +++ b/code/modules/mapping/reader.dm @@ -494,14 +494,15 @@ GLOBAL_LIST_EMPTY(map_model_default) if(members_attributes[index] != default_list) world.preloader_setup(members_attributes[index], members[index]) + var/turf/new_turf_type = members[index] // Note: we make the assertion that the last path WILL be a turf. if it isn't, this will fail. var/old_virtual_z = crds.virtual_z if(placeOnTop) - instance = crds.PlaceOnTop(null, members[index], CHANGETURF_DEFER_CHANGE | (no_changeturf ? CHANGETURF_SKIP : NONE)) + instance = crds.PlaceOnTop(null, new_turf_type, CHANGETURF_DEFER_CHANGE | (no_changeturf ? CHANGETURF_SKIP : NONE)) else if(!no_changeturf) - instance = crds.ChangeTurf(members[index], null, CHANGETURF_DEFER_CHANGE) + instance = crds.ChangeTurf(new_turf_type, initial(new_turf_type.baseturfs), CHANGETURF_DEFER_CHANGE) else - instance = create_turf(members[index], crds , old_virtual_z)//first preloader pass + instance = create_turf(new_turf_type, crds , old_virtual_z)//first preloader pass var/turf/new_turf = instance new_turf.virtual_z = old_virtual_z //UNDER NO CIRCUMSTANCES LOOSE THIS VARIABLE diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 10f43aad4580..bbc84ec7ee68 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -253,7 +253,7 @@ var/datum/component/material_container/materials = GetComponent(/datum/component/material_container) materials.use_materials(alloy.materials, amount) - generate_mineral(alloy.build_path) + generate_mineral(alloy.build_path, amount) /obj/machinery/mineral/processing_unit/proc/can_smelt(datum/design/D) if(D.make_reagents.len) @@ -271,8 +271,8 @@ return build_amount -/obj/machinery/mineral/processing_unit/proc/generate_mineral(P) - var/O = new P(src) +/obj/machinery/mineral/processing_unit/proc/generate_mineral(P, amount) + var/O = new P(src, amount) unload_mineral(O) /obj/machinery/mineral/processing_unit/on_deconstruction() diff --git a/code/modules/mob/living/carbon/human/consistent_human.dm b/code/modules/mob/living/carbon/human/consistent_human.dm index c35d8a71759e..cecfe74b7cc8 100644 --- a/code/modules/mob/living/carbon/human/consistent_human.dm +++ b/code/modules/mob/living/carbon/human/consistent_human.dm @@ -3,36 +3,40 @@ return //No randomisation /mob/living/carbon/human/dummy/consistent/proc/seeded_randomization(seed = 0) - gender = list(MALE, FEMALE)[seed % 2 + 1] - skin_tone = GLOB.skin_tones[seed % length(GLOB.skin_tones) + 1] - hairstyle = GLOB.hairstyles_list[seed % length(GLOB.hairstyles_list) + 1] - hair_color = color_natural_from_seed(seed) - eye_color = short_color_from_seed(seed) + seed = md5(seed) - // Mutant randomizing, doesn't affect the mob appearance unless it's the specific mutant. - dna.features["mcolor"] = short_color_from_seed(seed * 2) - dna.features["mcolor2"] = short_color_from_seed(seed * 3) - //AAAAAAAAAAAAAAAAAAAAAAAAAA - dna.features["ethcolor"] = GLOB.color_list_ethereal[GLOB.color_list_ethereal[seed % length(GLOB.color_list_ethereal) + 1]] - dna.features["tail_lizard"] = GLOB.tails_list_lizard[seed % length(GLOB.tails_list_lizard) + 1] - dna.features["face_markings"] = GLOB.face_markings_list[seed % length(GLOB.face_markings_list) + 1] - dna.features["horns"] = GLOB.horns_list[seed % length(GLOB.horns_list) + 1] - dna.features["frills"] = GLOB.frills_list[seed % length(GLOB.frills_list) + 1] - dna.features["spines"] = GLOB.spines_list[seed % length(GLOB.spines_list) + 1] - dna.features["body_markings"] = GLOB.body_markings_list[seed % length(GLOB.body_markings_list) + 1] - dna.features["moth_wings"] = GLOB.moth_wings_list[seed % length(GLOB.moth_wings_list) + 1] - dna.features["moth_fluff"] = GLOB.moth_fluff_list[seed % length(GLOB.moth_fluff_list) + 1] - dna.features["spider_legs"] = GLOB.spider_legs_list[seed % length(GLOB.spider_legs_list) + 1] - dna.features["spider_spinneret"] = GLOB.spider_spinneret_list[seed % length(GLOB.spider_spinneret_list) + 1] - dna.features["squid_face"] = GLOB.squid_face_list[seed % length(GLOB.squid_face_list) + 1] - dna.features["kepori_feathers"] = GLOB.kepori_feathers_list[seed % length(GLOB.kepori_feathers_list) + 1] - dna.features["kepori_body_feathers"] = GLOB.kepori_body_feathers_list[seed % length(GLOB.kepori_body_feathers_list) + 1] - dna.features["vox_head_quills"] = GLOB.vox_head_quills_list[seed % length(GLOB.vox_head_quills_list) + 1] - dna.features["vox_neck_quills"] = GLOB.vox_neck_quills_list[seed % length(GLOB.vox_neck_quills_list) + 1] - dna.features["elzu_horns"] = GLOB.elzu_horns_list[seed % length(GLOB.elzu_horns_list) + 1] - dna.features["tail_elzu"] = GLOB.tails_list_elzu[seed % length(GLOB.tails_list_elzu) + 1] - dna.features["ipc_chassis"] = GLOB.ipc_chassis_list[seed % length(GLOB.ipc_chassis_list) + 1] - dna.features["ipc_screen"] = GLOB.ipc_screens_list[seed % length(GLOB.ipc_screens_list) + 1] + gender = list(MALE, FEMALE)[hex2num(copytext(seed, 1, 2)) % 2 + 1] + skin_tone = GLOB.skin_tones[hex2num(copytext(seed, 2, 3)) % length(GLOB.skin_tones) + 1] - update_body() - update_hair() + hairstyle = GLOB.hairstyles_list[hex2num(copytext(seed, 1, 3)) % length(GLOB.hairstyles_list) + 1] + facial_hairstyle = GLOB.facial_hairstyles_list[hex2num(copytext(seed, 3, 6)) % length(GLOB.facial_hairstyles_list) + 1] + + hair_color = color_natural_from_seed(copytext(seed, 1, 6)) + facial_hair_color = hair_color + eye_color = color_from_seed(copytext(seed, 3, 9)) + + dna.features["mcolor"] = color_from_seed(copytext(seed, 1, 9)) + dna.features["mcolor2"] = color_from_seed(copytext(seed, 2, 10)) + dna.features["ethcolor"] = color_from_seed(copytext(seed, 3, 11)) + + dna.features["tail_lizard"] = GLOB.tails_list_lizard[hex2num(copytext(seed, 2, 3)) % length(GLOB.tails_list_lizard) + 1] + dna.features["face_markings"] = GLOB.face_markings_list[hex2num(copytext(seed, 3, 4)) % length(GLOB.face_markings_list) + 1] + dna.features["horns"] = GLOB.horns_list[hex2num(copytext(seed, 4, 5)) % length(GLOB.horns_list) + 1] + dna.features["frills"] = GLOB.frills_list[hex2num(copytext(seed, 5, 6)) % length(GLOB.frills_list) + 1] + dna.features["spines"] = GLOB.spines_list[hex2num(copytext(seed, 6, 7)) % length(GLOB.spines_list) + 1] + dna.features["body_markings"] = GLOB.body_markings_list[hex2num(copytext(seed, 7, 8)) % length(GLOB.body_markings_list) + 1] + dna.features["moth_wings"] = GLOB.moth_wings_list[hex2num(copytext(seed, 8, 9)) % length(GLOB.moth_wings_list) + 1] + dna.features["moth_fluff"] = GLOB.moth_fluff_list[hex2num(copytext(seed, 9, 10)) % length(GLOB.moth_fluff_list) + 1] + dna.features["spider_legs"] = GLOB.spider_legs_list[hex2num(copytext(seed, 10, 11)) % length(GLOB.spider_legs_list) + 1] + dna.features["spider_spinneret"] = GLOB.spider_spinneret_list[hex2num(copytext(seed, 11, 12)) % length(GLOB.spider_spinneret_list) + 1] + dna.features["kepori_feathers"] = GLOB.kepori_feathers_list[hex2num(copytext(seed, 12, 13)) % length(GLOB.kepori_feathers_list) + 1] + dna.features["kepori_body_feathers"] = GLOB.kepori_body_feathers_list[hex2num(copytext(seed, 13, 14)) % length(GLOB.kepori_body_feathers_list) + 1] + dna.features["vox_head_quills"] = GLOB.vox_head_quills_list[hex2num(copytext(seed, 14, 15)) % length(GLOB.vox_head_quills_list) + 1] + dna.features["vox_neck_quills"] = GLOB.vox_neck_quills_list[hex2num(copytext(seed, 15, 16)) % length(GLOB.vox_neck_quills_list) + 1] + dna.features["elzu_horns"] = GLOB.elzu_horns_list[hex2num(copytext(seed, 16, 17)) % length(GLOB.elzu_horns_list) + 1] + dna.features["tail_elzu"] = GLOB.tails_list_elzu[hex2num(copytext(seed, 17, 18)) % length(GLOB.tails_list_elzu) + 1] + dna.features["ipc_chassis"] = GLOB.ipc_chassis_list[hex2num(copytext(seed, 18, 19)) % length(GLOB.ipc_chassis_list) + 1] + dna.features["ipc_screen"] = GLOB.ipc_screens_list[hex2num(copytext(seed, 19, 20)) % length(GLOB.ipc_screens_list) + 1] + + var/species_id = GLOB.roundstart_races[hex2num(copytext(seed, 3, 4)) % length(GLOB.roundstart_races) + 1] + set_species(GLOB.species_list[species_id]) diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index caf465140231..d43d744e2800 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -90,7 +90,7 @@ icon_state = "combatbear" icon_living = "combatbear" icon_dead = "combatbear_dead" - faction = list("frontiersman") + faction = list(FACTION_ANTAG_FRONTIERSMEN) butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/slab/bear = 5, /obj/item/clothing/head/bearpelt = 1, /obj/item/bear_armor = 1) melee_damage_lower = 25 melee_damage_upper = 35 @@ -141,7 +141,7 @@ icon_living = "butterbear" icon_dead = "butterbear_dead" desc = "I can't believe its not a bear!" - faction = list("neutral", "frontiersmen") + faction = list("neutral", FACTION_ANTAG_FRONTIERSMEN) obj_damage = 11 melee_damage_lower = 1 melee_damage_upper = 1 diff --git a/code/modules/mob/living/simple_animal/hostile/frontiersman.dm b/code/modules/mob/living/simple_animal/hostile/frontiersman.dm index feeecdb5b43d..1a71ed52da78 100644 --- a/code/modules/mob/living/simple_animal/hostile/frontiersman.dm +++ b/code/modules/mob/living/simple_animal/hostile/frontiersman.dm @@ -23,7 +23,7 @@ /obj/item/kitchen/knife) atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 1, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) unsuitable_atmos_damage = 15 - faction = list("frontiersman") + faction = list(FACTION_ANTAG_FRONTIERSMEN) status_flags = CANPUSH del_on_death = 1 diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 72b6b25187ba..b98d14128e12 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -40,7 +40,7 @@ loot = list(/obj/effect/mob_spawn/human/corpse/syndicatesoldier) atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 1, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) unsuitable_atmos_damage = 15 - faction = list(ROLE_SYNDICATE) + faction = list(FACTION_ANTAG_SYNDICATE) check_friendly_fire = 1 status_flags = CANPUSH del_on_death = 1 diff --git a/code/modules/surgery/healing.dm b/code/modules/surgery/healing.dm index 956768c09aa4..8d3eecb3ead3 100644 --- a/code/modules/surgery/healing.dm +++ b/code/modules/surgery/healing.dm @@ -65,11 +65,11 @@ var/urhealedamt_burn = burnhealing if(missinghpbonus) if(target.stat != DEAD) - urhealedamt_brute += round((target.getBruteLoss()/ missinghpbonus),0.1) - urhealedamt_burn += round((target.getFireLoss()/ missinghpbonus),0.1) + urhealedamt_brute += brutehealing ? round((target.getBruteLoss()/ missinghpbonus),0.1) : 0 + urhealedamt_burn += burnhealing ? round((target.getFireLoss()/ missinghpbonus),0.1) : 0 else //less healing bonus for the dead since they're expected to have lots of damage to begin with (to make TW into defib not TOO simple) - urhealedamt_brute += round((target.getBruteLoss()/ (missinghpbonus*5)),0.1) - urhealedamt_burn += round((target.getFireLoss()/ (missinghpbonus*5)),0.1) + urhealedamt_brute += brutehealing ? round((target.getBruteLoss()/ (missinghpbonus*5)),0.1) : 0 + urhealedamt_burn += burnhealing ? round((target.getFireLoss()/ (missinghpbonus*5)),0.1) : 0 if(!get_location_accessible(target, target_zone)) urhealedamt_brute *= 0.55 urhealedamt_burn *= 0.55 diff --git a/code/modules/tgs/v5/api.dm b/code/modules/tgs/v5/api.dm index 25d49b3e3bdb..a5c064a8eaf1 100644 --- a/code/modules/tgs/v5/api.dm +++ b/code/modules/tgs/v5/api.dm @@ -8,8 +8,12 @@ var/reboot_mode = TGS_REBOOT_MODE_NORMAL + /// List of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call var/list/intercepted_message_queue + /// List of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call + var/list/offline_message_queue + var/list/custom_commands var/list/test_merges @@ -194,17 +198,7 @@ var/datum/tgs_chat_channel/channel = I ids += channel.id - message2 = UpgradeDeprecatedChatMessage(message2) - - if (!length(channels)) - return - - var/list/data = message2._interop_serialize() - data[DMAPI5_CHAT_MESSAGE_CHANNEL_IDS] = ids - if(intercepted_message_queue) - intercepted_message_queue += list(data) - else - Bridge(DMAPI5_BRIDGE_COMMAND_CHAT_SEND, list(DMAPI5_BRIDGE_PARAMETER_CHAT_MESSAGE = data)) + SendChatMessageRaw(message2, ids) /datum/tgs_api/v5/ChatTargetedBroadcast(datum/tgs_message_content/message2, admin_only) var/list/channels = list() @@ -213,26 +207,42 @@ if (!channel.is_private_channel && ((channel.is_admin_channel && admin_only) || (!channel.is_admin_channel && !admin_only))) channels += channel.id + SendChatMessageRaw(message2, channels) + +/datum/tgs_api/v5/ChatPrivateMessage(datum/tgs_message_content/message2, datum/tgs_chat_user/user) + SendChatMessageRaw(message2, list(user.channel.id)) + +/datum/tgs_api/v5/proc/SendChatMessageRaw(datum/tgs_message_content/message2, list/channel_ids) message2 = UpgradeDeprecatedChatMessage(message2) - if (!length(channels)) + if (!length(channel_ids)) return var/list/data = message2._interop_serialize() - data[DMAPI5_CHAT_MESSAGE_CHANNEL_IDS] = channels + data[DMAPI5_CHAT_MESSAGE_CHANNEL_IDS] = channel_ids if(intercepted_message_queue) intercepted_message_queue += list(data) - else - Bridge(DMAPI5_BRIDGE_COMMAND_CHAT_SEND, list(DMAPI5_BRIDGE_PARAMETER_CHAT_MESSAGE = data)) + return -/datum/tgs_api/v5/ChatPrivateMessage(datum/tgs_message_content/message2, datum/tgs_chat_user/user) - message2 = UpgradeDeprecatedChatMessage(message2) - var/list/data = message2._interop_serialize() - data[DMAPI5_CHAT_MESSAGE_CHANNEL_IDS] = list(user.channel.id) - if(intercepted_message_queue) - intercepted_message_queue += list(data) + if(offline_message_queue) + offline_message_queue += list(data) + return + + if(detached) + offline_message_queue = list(data) + + WaitForReattach(FALSE) + + data = offline_message_queue + offline_message_queue = null + + for(var/queued_message in data) + SendChatDataRaw(queued_message) else - Bridge(DMAPI5_BRIDGE_COMMAND_CHAT_SEND, list(DMAPI5_BRIDGE_PARAMETER_CHAT_MESSAGE = data)) + SendChatDataRaw(data) + +/datum/tgs_api/v5/proc/SendChatDataRaw(list/data) + Bridge(DMAPI5_BRIDGE_COMMAND_CHAT_SEND, list(DMAPI5_BRIDGE_PARAMETER_CHAT_MESSAGE = data)) /datum/tgs_api/v5/ChatChannelInfo() RequireInitialBridgeResponse() diff --git a/html/changelogs/AutoChangeLog-pr-2672.yml b/html/changelogs/AutoChangeLog-pr-2672.yml new file mode 100644 index 000000000000..88151cbed8ce --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-2672.yml @@ -0,0 +1,4 @@ +author: Skies-Of-Blue +changes: + - {balance: planetary chem bees have been replaced with the garden variety} +delete-after: true diff --git a/html/changelogs/archive/2024-01.yml b/html/changelogs/archive/2024-01.yml index 4454c16ad468..9ee67f626bd5 100644 --- a/html/changelogs/archive/2024-01.yml +++ b/html/changelogs/archive/2024-01.yml @@ -43,3 +43,28 @@ Zevotech: - rscadd: adds a fax machine to the paracelsus-class - bugfix: rotates a bedsheet on the paracelsus class to be the right direction +2024-01-15: + tmtmtl30: + - rscdel: Holodeck code has been removed. + - bugfix: Outposts should end up erroneously spaced less frequently. +2024-01-18: + MeeMOfCourse, retlaw34: + - tweak: Repathed almost every faction outfit, and they now apply factions upon + being used. + - tweak: SecHud icons have been redone. Sprites by retlaw34. + - tweak: Descriptions of multiple clothing items. + - rscadd: SecHuds now identify factions. Somewhat. + - rscadd: More desperate groups of Frontiersmen have been spotted roaming the frontier. +2024-01-19: + SomeguyManperson: + - tweak: tend brute/burns can no longer attempt to (very ineffectively) heal the + other damage type +2024-01-23: + SomeguyManperson: + - bugfix: ore smelter no longer obliterates materials when smelting alloys +2024-01-26: + Apogee-dev: + - tweak: Changed prefixes on Syndicate ships to reflect subfaction + SomeguyManperson: + - bugfix: you can no longer lock yourself out of the icemoon dragon lair by killing + the dragon with a crusher diff --git a/icons/mob/hud.dmi b/icons/mob/hud.dmi index aee25733cdbe..e55252e102df 100644 Binary files a/icons/mob/hud.dmi and b/icons/mob/hud.dmi differ diff --git a/shiptest.dme b/shiptest.dme index df737d985b37..543b4322394d 100644 --- a/shiptest.dme +++ b/shiptest.dme @@ -793,7 +793,6 @@ #include "code\game\area\Space_Station_13_areas.dm" #include "code\game\area\areas\away_content.dm" #include "code\game\area\areas\centcom.dm" -#include "code\game\area\areas\holodeck.dm" #include "code\game\area\areas\outpost.dm" #include "code\game\area\areas\shuttles.dm" #include "code\game\area\areas\ruins\_ruins.dm" @@ -1949,11 +1948,8 @@ #include "code\modules\clothing\masks\miscellaneous.dm" #include "code\modules\clothing\neck\_neck.dm" #include "code\modules\clothing\outfits\event.dm" -#include "code\modules\clothing\outfits\gezena.dm" #include "code\modules\clothing\outfits\plasmaman.dm" -#include "code\modules\clothing\outfits\solgov.dm" #include "code\modules\clothing\outfits\standard.dm" -#include "code\modules\clothing\outfits\syndicate.dm" #include "code\modules\clothing\outfits\vv_outfit.dm" #include "code\modules\clothing\outfits\ert\frontiersmen_ert.dm" #include "code\modules\clothing\outfits\ert\indie_ert.dm" @@ -1962,6 +1958,15 @@ #include "code\modules\clothing\outfits\ert\nanotrasen_ert.dm" #include "code\modules\clothing\outfits\ert\solgov_ert.dm" #include "code\modules\clothing\outfits\ert\syndicate_ert.dm" +#include "code\modules\clothing\outfits\factions\frontiersmen.dm" +#include "code\modules\clothing\outfits\factions\gezena.dm" +#include "code\modules\clothing\outfits\factions\independent.dm" +#include "code\modules\clothing\outfits\factions\inteq.dm" +#include "code\modules\clothing\outfits\factions\minutemen.dm" +#include "code\modules\clothing\outfits\factions\nanotrasen.dm" +#include "code\modules\clothing\outfits\factions\roumain.dm" +#include "code\modules\clothing\outfits\factions\solgov.dm" +#include "code\modules\clothing\outfits\factions\syndicate.dm" #include "code\modules\clothing\shoes\_shoes.dm" #include "code\modules\clothing\shoes\bananashoes.dm" #include "code\modules\clothing\shoes\colour.dm" @@ -2171,11 +2176,7 @@ #include "code\modules\holiday\foreign_calendar.dm" #include "code\modules\holiday\holidays.dm" #include "code\modules\holodeck\area_copy.dm" -#include "code\modules\holodeck\computer.dm" -#include "code\modules\holodeck\holo_effect.dm" -#include "code\modules\holodeck\holodeck_map_templates.dm" #include "code\modules\holodeck\items.dm" -#include "code\modules\holodeck\mobs.dm" #include "code\modules\holodeck\turfs.dm" #include "code\modules\hydroponics\biogenerator.dm" #include "code\modules\hydroponics\fermenting_barrel.dm"